Appeller l'evenement d'un autre composant

cs_MohInfo Messages postés 58 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 14 juin 2011 - 9 juil. 2010 à 00:35
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 - 9 juil. 2010 à 14:12
bonsoir à tous

j'ai un petit soucis
je veux implémenter dans un TmenuItem le méme code que celui d'un tButton qui se situe dans une autre form, comment puis je appeler la procédure Button1Clic(sender : tObject) dans l'évènement de tMenuItem au lieu de réécrire le code de la procédure button1.clic

merci de votre aide

10 réponses

dubois77 Messages postés 675 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 19 février 2019 14
9 juil. 2010 à 07:49
Le plus simple : tu fais une procédure unique qui gère le problème
et tu l'appelle dans les 2 autres (tmenuitem et tbutton)



Dubois77
0
cs_MohInfo Messages postés 58 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 14 juin 2011
9 juil. 2010 à 10:10
merci pour votre réponse mais je veus implémenter ce que j'ai posé comme probléme exactement.
0
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
9 juil. 2010 à 11:37
Ou alors, dans l'inspecteur d'objets, au lieu de doublecliquer comme d'habitude pour créer un nouvel évènement, tu déroules la liste déroulante. Si les paramètres sont identiques, tu pourras choisir le même événement. Sinon, il faut utiliser la méthode de Dubois.

Cordialement, Bacterius !
0
beckerich Messages postés 302 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 17 septembre 2013 2
9 juil. 2010 à 12:00
bonjour,

ou encore mieux, utiliser une TActionList et des TAction, puis assigner le TAction aux propriétés Action des composants désirés.

Luc.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
9 juil. 2010 à 12:31
Salut,

tout simplement comme ça:

NomForm.Button1.Click


[hr]@+Cirec
[hr]
0
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
9 juil. 2010 à 13:22
Ou NomForm.Button1.OnClick(self)
Il y a plein de solutions ! (toutes équivalentes à un certain niveau mais bon)

Cordialement, Bacterius !
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
9 juil. 2010 à 13:38
Attention

"Button1.Click" est une procedure qui sécurise l'appel a l'évènement OnClick
Si l'évènement OnClick n'est pas assigné il n'y aura pas d'erreur.

Par contre avec "Button1.OnClick(self)"
si l'évènement OnClick n'est pas assigné tu auras une belle violation d'accès !

conclusion ... autant l'appeler correctement

[hr]@+Cirec
[hr]
0
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
9 juil. 2010 à 13:39
if Assigned(Button1.OnClick) ça marche ?

Cordialement, Bacterius !
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
9 juil. 2010 à 13:49
oui bien sur .. mais la procedure "Click" est faite pour ça
la procedure est implémentée et liée dans le code que tu l'utilises où non !!
Donc, autant s'en servir, le reste n'est que code supplémentaire


[hr]@+Cirec
[hr]
0
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
9 juil. 2010 à 14:12
Click existe dans toutes les versions de Delphi ? Il me semble ne l'avoir jamais rencontrée dans mon vieux Delphi 3 (que d'ailleurs il faudrait que je numérise proprement un jour, le disque se fait vieux).

Note que personnellement je préfère être au plus bas niveau, et ne pas me baser sur des choses dont je ne connais pas le contenu, pour éviter les mauvaises surprises et les sessions de débuggages pénibles. Mais dans un sens, il faut savoir se fier au matos desfois

Cordialement, Bacterius !
0
Rejoignez-nous