Quel est le composant un menu déroulant, cliquez sur proviennent de
Avoir un popup menu attaché à plusieurs composants sur un formulaire (boutons, mais aussi des choses comme TCharts), je voudrais savoir quel composant a été cliqué avec le bouton droit pour lancer le menu déroulant dans la première place.
L'Expéditeur paramètre de la méthode click juste des points à l'TMenuItem, son parent le menu contextuel (ou les parents de l'élément de menu).
Comment puis-je obtenir de l'origine de la composante?
OriginalL'auteur Ralph M. Rickenbach | 2010-03-24
Vous devez vous connecter pour publier un commentaire.
Vouliez-vous dire PopupMenu1.PopupComponent ?
pourquoi/comment est-ce que ce sera
more generic
?Plus générique, car il n'a pas besoin de connaître le nom du composant. Moins fragiles si les noms des composants de changer, et le même événement pourrait être utilisé par plus d'un composant.
N'est-ce pas tout simplement mieux pour copier&coller? Mais comment, si vous utilisez le "parler" des identifiants, dans le ci-dessus (sans doute assez rare) cas quelque chose comme
CommonPopupMenu
ouBasicPopupMenu
?Il est plus facile pour plus d'un PopupMenu composant à utiliser le même gestionnaire d'événements. Je fais quelque chose de similaire dans d'autres gestionnaires d'événements, mais ce n'est pas une balle d'argent.
OriginalL'auteur SimaWB
Vous pouvez obtenir de l'appelant dans l'événement click du TMenuItem d'un PopupMenu par
Un Exemple d'un PopupMenu qui est affecté à plusieurs zones de liste et résout les exporter vers un fichier de fonctionnalités:
OriginalL'auteur Schneider Infosystems Ltd
Comme un dernier recours, vous pouvez utiliser
Mouse.CursorPos
dansTPopupMenu.OnPopup
de trouver ce composant sur un formulaire. Mais il est probablement mieux/plus facile.OriginalL'auteur