Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Vererbte Eigenschaft verstecken ... ?


Konrad - Mi 29.01.03 17:51
Titel: Vererbte Eigenschaft verstecken ... ?
Hallo,

ich habe eine eigene Komponente programmiert, die von TLabel abgeleitet ist.
Nun wollte ich die Eigenschaft "AutoSize" von TLabel gerne in meiner Komponete nicht haben und daher verstecken oder deaktivieren.
Wie stelle ich das am gescheitesten an?

Habt vielen Dank


Klabautermann - Mi 29.01.03 18:17

Hallo,

das geht nicht, denn das würde zu inkompatibilitäten des Nachfahren mit seinem Vorfahren führen (Stichwort Polimorphie).
Du kannst dein Label aber von tCustomLabel ableiten (solltest du sowiso) bei dem sind noch fast alle Eigenscften als Protected (oder private) deklariert. Die kannst du sichtbar machen, indem du sie in dem Published Block redeklariers. Du musst hier werder Typ noch sontstwas angeben, nur den Namen:

Quelltext
1:
2:
3:
published
  property left;
  property top;


Gruß
Klabautermann


Konrad - Mi 29.01.03 22:09

Da kann man nichts machen.
Hab jetzt alle bis auf die gewünschte Eigenschaft nochmal aufgeführt.