Déclaration des champs de classe
Remonter à Publication du crayon et du pinceau
Chaque classe appartenant à un composant doit avoir un champ déclaré dans ce composant. Le champ de classe garantit que le composant dispose toujours d'un pointeur sur l'objet qui lui appartient afin de lui permettre de le détruire avant de se détruire lui-même. Généralement, un composant initialise les objets dont il est propriétaire dans son constructeur et les détruit dans son destructeur.
Les champs de classe des objets ayant un propriétaire sont presque toujours déclarés private. Si des applications (ou d'autres composants) ont besoin d'accéder aux objets ayant un propriétaire, vous devez pour cela déclarer des propriétés published ou public.
Ajoutez des champs de classe pour le crayon et le pinceau de votre contrôle forme :
type
TSampleShape = class(TGraphicControl)
private { les données membres sont presque toujours privées }
FPen: TPen; { donnée membre pour l'objet crayon }
FBrush: TBrush; { donnée membre pour l'objet pinceau }
.
.
.
end;
class PACKAGE TSampleShape : public TGraphicControl
{
private: // les données membres sont toujours privées
TPen *FPen; // une donnée membre pour l'objet crayon
TBrush *FBrush; // une donnée membre pour l'objet pinceau
.
.
.
};