Redéfinition du constructeur et du destructeur

De RAD Studio
Aller à : navigation, rechercher

Remonter à Création d'un composant graphique - Index

Pour changer les valeurs par défaut des propriétés et initialiser les classes appartenant à votre composant, vous devez redéfinir le constructeur et le destructeur reçus en héritage. Dans les deux cas, n'oubliez pas d'appeler la méthode reçue en héritage.

Modification des valeurs par défaut des propriétés

La taille par défaut d'un contrôle graphique étant réduite, vous pouvez modifier sa largeur et sa hauteur dans le constructeur. La modification des valeurs par défaut des propriétés est abordée plus en détail dans Modification d'un composant existant.

Dans notre exemple, le contrôle forme définit sa taille par un carré de 65 pixels de côté.

  1. Ajoutez le constructeur redéfini dans la déclaration de la classe composant :
 type
   TSampleShape = class(TGraphicControl)
   public                                              { constructeurs toujours publics }
     constructor Create(AOwner: TComponent); override       { ne pas oublier la directive override }
   end;
 class PACKAGE TSampleShape : public TGraphicControl
 {
 public:
     virtual __fastcall TSampleShape(TComponent* Owner);
 };
  1. Redéclarez les propriétés Height et Width avec leurs nouvelles valeurs par défaut :
 type
   TSampleShape = class(TGraphicControl)
   .
   .
   .
   published
     property Height default 65;
     property Width default 65;
   end;
 class PACKAGE TSampleShape : public TGraphicControl
 {
   .
   .
   .
 __published:
     __property Height;
     __property Width;
 }
  1. Ecrivez le nouveau constructeur dans la partie implementation de l'unité :
 constructor TSampleShape.Create(AOwner: TComponent);
 begin
   inherited Create(AOwner);  { appeler toujours le constructeur hérité }
   Width := 65;
   Height := 65;
 end;
 __fastcall TSampleShape::TSampleShape(TComponent* Owner) : TGraphicControl(Owner)
 {
   Width = 65;
   Height = 65;
 }