salut,

Envoyé par
billbocquet
Lorsque j'implémente cette class, j'ai besoin de connaître le handle de la fenêtre par laquelle cette classe à été implémentée car je dois faire un SendMessage.
je me dis que tu ne t'exprimes pas avec les termes exacts, et je crois que'en fait tu veux dire:
Lorsque j'implémente cette classe ,j'ai besoin de connaitre le Handle de la fenêtre par laquelle cette instance de classe appartient, car de dois faire un SendMessage
note c'est comme ca que je comprend un peu.
déjà il faut te signaler quelque chose: ta classe est dérivée de TObject, qui est l'ancêtre de tous les objets de la VCL mais celle-ci ne te permet pas de faire ce que tu désires, soit connaitre l'objet auquel appartient ton objet.
je te propose donc de dériver ta classe plutôt de TComponent, dans son contructeur il y a un paramètre AOwner qui est l'objet qui est chargé de la Libération de ton Objet.
autre chose, pour que tu puisse utiliser le son handle l'objet auquel appartient ton objet doit être dérivé de la classe TWinControl, si ton objet appartiendra systématiquement à ta Form alors il n'y a pas de problème, sinon il faut faire gaffe
ainsi tu pourras avoir un code du genre:
SendMessage( (self.Owner as TWinControl).Handle, ...);
ou
TWinControl( self.Owner ).Perform( Message, ... );
ou encore
1 2
| if Assigned( self.Owner ) then
TForm( self.Owner ).Perform( Message, ... ); |
bon peut-être je n'ai pas été assez clair ou alors trop flou mais j'espère que tu comprends
Partager