Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Komponente von welcher Popupmenu aufgerufen wurde ermitteln


Andi_d - Sa 19.07.08 22:56
Titel: Komponente von welcher Popupmenu aufgerufen wurde ermitteln
Hallo!

Habe mehrere TGroupbox Komponenten auf meiner Oberfläche, welchen ich allen dasselbe Popupmenu zuweise:


Quelltext
1:
2:
3:
  GroupBox1.PopupMenu:= PopUpmenu_Reset;
  GroupBox2.PopupMenu:= PopUpmenu_Reset;
  GroupBox2.PopupMenu:= PopUpmenu_Reset;


Nun möchte ich beim Klicken auf ein Item des Popupmenus herausfinden, aus welcher Groupbox das Popupmenu aufgerufen wurde.

Kann mir jemand sagen wie das geht????


Vielen Dank!!!


Andi


Yogu - So 20.07.08 00:00

Du könntest im Ereignis OnMouseUp prüfen, ob die rechte Maustaste losgelassen (!) wurde, und anschließend eine Variable mit Sender belegen. Die dürfte dann dem Control entsprechen, das das Menü aufgerufen hat. MouseUp deshalb, weil du nach dem Drücken der Maustaste den Zeiger noch auf ein anderes Control verschieben kannst.


Andi_d - So 20.07.08 00:59

user profile iconYogu hat folgendes geschrieben:
Du könntest im Ereignis OnMouseUp prüfen,.....




Danke für den Tipp!!

Doch mit dem OnMouseUp Ereignis funktioniert das ganze nicht! OnMouseUp wird anscheinend beim Aufruf des Popupmenus nicht aufgerufen?!?!

Aber: Mit OnMouseDown funktionierts einwandfrei!!


Danke und Gruss! :wink:


jaenicke - So 20.07.08 08:20

Du könntest natürlich auch die einfache Variante nehmen und einfach die Eigenschaft PopupComponent des Popupmenüs benutzen, da steht das nämlich immer drin ;-).