Konstruktor und Destruktor überschreiben
Nach oben zu Grafische Komponenten erzeugen - Index
Um die voreingestellten Eigenschaftswerte zu ändern und die Objekte Ihrer Klasse zu initialisieren, müssen Sie den geerbten Konstruktor und Destruktor überschreiben. Vergessen Sie nicht, in beiden Fällen die geerbte Methode aufzurufen.
Voreingestellte Eigenschaftswerte überschreiben
Nachdem die Komponente in der Voreinstellung etwas klein ausfällt, sollten Sie im Konstruktor die anfängliche Breite und Höhe ändern. Details darüber finden Sie unter Vorhandene Komponenten modifizieren.
In diesem Beispiel weisen Sie der Komponente eine Breite und Höhe von je 65 Pixel zu.
- Fügen Sie der Deklaration der Komponentenklasse den überschriebenen Konstruktor hinzu:
type TSampleShape = class(TGraphicControl) public { Konstruktoren sind immer als public deklariert } constructor Create(AOwner: TComponent); override { override nicht vergessen } end;
class PACKAGE TSampleShape : public TGraphicControl { public: virtual __fastcall TSampleShape(TComponent *Owner); };
- 2. Redeklarieren Sie die Eigenschaften Height und Width, und weisen Sie ihnen die neuen Standardwerte zu:
type TSampleShape =</source></nowiki> class(TGraphicControl) . . . published property Height default 65; property Width default 65; end;
class PACKAGE TSampleShape : public TGraphicControl { . . . __published: __property Height; __property Width; }
- 3. Schreiben Sie im implementation-Abschnitt der Unit den Konstruktor:
constructor TSampleShape.Create(AOwner: TComponent); begin inherited Create(AOwner); { Immer den geerbten Konstruktor aufrufen } Width := 65; Height := 65; end;
__fastcall TSampleShape::TSampleShape(TComponent* Owner) : TGraphicControl(Owner) { Width = 65; Height = 65; }