Ocultar propriedades Herdadas

06/08/2004

0

Olá, pessoal, boa tarde.

Meu problema é o seguinte: Estou criando um componente filho de Tedit e gostaria que a propriedade text [b:049d30107b]Não Aparecesse[/b:049d30107b] no object inspector. Como se faz para ocultar propriedades?

Grato desde já


Vitor Rubio

Vitor Rubio

Responder

Posts

06/08/2004

Marcelo Saviski

tente herdar seu componente de TCustomEdit

TSeuEdit = class(TCustomEdit)
  private
    .....
  protected
    .....
  public
    ....
  published
    //                               <==Adicione isso Abaixo
    property Anchors;
    property AutoSelect;
    property AutoSize;
    property BevelEdges;
    property BevelInner;
    property BevelKind default bkNone;
    property BevelOuter;
    property BiDiMode;
    property BorderStyle;
    property CharCase;
    property Color;
    property Constraints;
    property Ctl3D;
    property DragCursor;
    property DragKind;
    property DragMode;
    property Enabled;
    property Font;
    property HideSelection;
    property ImeMode;
    property ImeName;
    property MaxLength;
    property OEMConvert;
    property ParentBiDiMode;
    property ParentColor;
    property ParentCtl3D;
    property ParentFont;
    property ParentShowHint;
    property PasswordChar;
    property PopupMenu;
    property ReadOnly;
    property ShowHint;
    property TabOrder;
    property TabStop;
    //property Text;                                    <==não coloque essa
    property Visible;
    property OnChange;
    property OnClick;
    property OnContextPopup;
    property OnDblClick;
    property OnDragDrop;
    property OnDragOver;
    property OnEndDock;
    property OnEndDrag;
    property OnEnter;
    property OnExit;
    property OnKeyDown;
    property OnKeyPress;
    property OnKeyUp;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnStartDock;
    property OnStartDrag;
  end;


você não tem como reduzir a visibilidade de uma propriedade, tipo, mudar de public p/ protected ou private, ou published p/ outra.


Responder

06/08/2004

Vitor Rubio

Eu sei disso, mas não era isso que eu queria fazer, na verdade, meu componente não é filho do Tedit, mas sim ´neto´, ele descende de um outro componente que eu fiz. Neste antigo componente eu preciso da propriedade text, mas no novo não. Fazer o componente descender de TcustomEdit me obrigaria a fazer ambos descenderem de TcustomEdit, e a colocar todo o código do componente antigo dentro do novo.

Mas, se não pode ocultar propriedades..... fazer o que?....


Responder

06/08/2004

Marcelo Saviski

não sei se funciona, mas vc pode tentar criar uma nova propriedade chamada text, tipo:

private
  FTextQualquer: string;
published
  property Text: string read FTextQualquer;


assim a prop Text iria aparecer mas não mudaria o texto....

não sei se funciona


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar