Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > OOP
Register FAQ Members List Calendar Guía de estilo Today's Posts

Coloboración Paypal con ClubDelphi

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 06/10/2004
JulioGO JulioGO is offline
Miembro
 
Join Date: Aug 2004
Posts: 94
Poder: 23
JulioGO Va por buen camino
Question Ocultar propiedades

¿Alguien sabe como oculta propiedades al crear un componente?. Desearia ocultar propiedades del control ComboBox para que pueda realizar las funciones que le estoy dando.

Saludos.
Reply With Quote
  #2  
Old 06/10/2004
keyboy keyboy is offline
Miembro
 
Join Date: Oct 2004
Posts: 367
Poder: 22
keyboy Va por buen camino
El nivel de visibilidad de una propiedad o método no puede degradarse, sólo aumentarse. Sin embargo, puedes heredar tu componente de TCustomComboBox en lugar de TComboBox y publicar sólo las propiedades que quieras mostrar. De hecho TComboBox no tiene nada de código, lo único que hace es publicar propiedades de TCustomComboBox.

Bye
Reply With Quote
  #3  
Old 07/10/2004
Neftali [Germán.Estévez]'s Avatar
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Join Date: Jul 2004
Location: Barcelona - España
Posts: 19,449
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Quote:
Originally Posted by JulioGO
¿Alguien sabe como oculta propiedades al crear un componente?. Desearia ocultar propiedades del control ComboBox para que pueda realizar las funciones que le estoy dando...
Se puedes ocultar propiedades en un derivado del componente; Por ejemplo puedes derivar un TComboBox y crear un TComboBoxEx al cual le ocultes las propiedades que desees; Prueba con un código como éste:

(código para la parte de Interficie)
Código Delphi [-]
...
type
  // Tipo Dummy
  TDummyProp = (dummyprop);
  // definición del componente derivado
  tcomboBoxNew = class(tcombobox)
  private
    { Private declarations }
    _DummyProp: TDummyProp;
  protected
    { Protected declarations }
  public
    { Public declarations }
  published
    { Published declarations }
    // Ocultar propiedades ============================
    property Charcase:TDummyProp read _DummyProp;
    property Color:TDummyProp read _DummyProp;
    property Constraints:TDummyProp read _DummyProp;
    property Ctl3D:TDummyProp read _DummyProp;
    property Cursor:TDummyProp read _DummyProp;
  end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Reply With Quote
  #4  
Old 07/10/2004
keyboy keyboy is offline
Miembro
 
Join Date: Oct 2004
Posts: 367
Poder: 22
keyboy Va por buen camino
¿Y esto de qué sirve?


Code:
 type
 	TDummyProp = (dummyprop);
 
 	TMyEdit = class(TEdit)
 	private
 		_DummyProp: TDummyProp;
 
 	published
 		property Text: TDummyProp read _DummyProp;
 	end;
 
 var
 	MyEdit: TMyEdit;
 
 	...
 
 TEdit(MyEdit).Text := 'Hola, todavía ando por aquí';
y a cambio llenas la componente derivada de una serie de propiedades extrañas.

Bye
Reply With Quote
  #5  
Old 08/10/2004
Neftali [Germán.Estévez]'s Avatar
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Join Date: Jul 2004
Location: Barcelona - España
Posts: 19,449
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Quote:
Originally Posted by keyboy
¿Y esto de qué sirve?
Pues justo para lo que han pedido....

Quote:
Originally Posted by JulioGO
¿Alguien sabe como oculta propiedades al crear un componente?.
Como tú bien apuntas la propiedad sigue estando, pero es que no se ha preguntado cómo quitarla, sino cómo ocultarla. Otro tema es ¿para qué puede ser útil? En mi caso alguna vez sí lo ha sido y Julio tendrá sus razones (supongo).

Quote:
Originally Posted by keyboy
...y a cambio llenas la componente derivada de una serie de propiedades extrañas.
No son propiedades extrañas, sino que son las mismas que tiene el propio componente que las redefines (como cambiarles el tipo); Éstas propiedades no aparecen en el DFM (no ocupan ese espacio).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Reply With Quote
  #6  
Old 03/11/2005
jachguate's Avatar
jachguate jachguate is offline
Miembro
 
Join Date: May 2003
Location: Guatemala
Posts: 6,254
Poder: 30
jachguate Va por buen camino
Si estas diseñando un componente, no lo derives de TComboBox, debiera haber un TCustomComboBox que no tenga publicadas las propiedades, y para el que podes decidir cuales publicar.

Las propiedades estarán alli, pero serán protegidas.

Saludos.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Reply With Quote
  #7  
Old 26/12/2007
alapaco alapaco is offline
No confirmado
 
Join Date: Jun 2003
Location: Buenos Aires
Posts: 287
Poder: 0
alapaco Va por buen camino
Question Ocultar control

Retomando el tema....si yo tengo un frame asi:

Código Delphi [-]
type
  TfraDomicilio = class(TFrame)
    cmbLocalidad: TComboBox;
    procedure cmbLocalidadEnter(Sender: TObject);
end;

Es posible modificarlo de alguna forma para que el control cmbLocalidad quede oculto (oculto para acceder por código, pero visible en el frame).

Lo que yo necesito es algo asi:

Código Delphi [-]
type
  TfraDomicilio = class(TFrame)
  private
    cmbLocalidad: TComboBox;
    procedure cmbLocalidadEnter(Sender: TObject);
  published
    property Localidad: String read GetLocalidad write SetLocalidad;
end;

Al ejecutar la aplicación y entrar al formulario que contiene ese frame me tira el error "Error reading cmbLocalidad.OnEnter: Invalid property value".

Como se puede solucionar la necesidad de que por código otra clase no pueda modificar las propiedades del control cmbLocalidad ???

Last edited by alapaco : 26/12/2007 at 17:53.
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +2. The time now is 01:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi