2009-05-09 9 views
0

Wir haben TToolbarButton (s) in einer Symbolleiste, jede mit ihrem eigenen zugeordneten TPopupMenu. Die Popup-Menüs sind alle gleich, so dass wir nur ein Menü für alle Symbolleisten-Schaltflächen haben möchten. Das Problem, das ich habe, ist zu bestimmen, welche ToolbarButton das Popup-Menü aufgerufen hat.Ermitteln der übergeordneten Komponente

Ich habe Folgendes versucht, aber ich bekomme immer eine Zugriffsverletzung.

...

with (Sender as TPopupMenu) do 
    ShowMessage((GetParentComponent as TPopupMenu).Name); 

...

Irgendwelche Ideen, wie die Eltern der Popup-Menüs zu bekommen?

Danke, Pieter.

+0

Menüs haben keine Eltern. Sie möchten die mit dem Menü verknüpfte Komponente *, aber es gibt keine Eltern-Kind-Beziehung. –

Antwort

6

Versuchen

with (sender as TPopupMenu) do 
     ShowMessage(PopupComponent.Name); 

, dass Sie die TToolButton geben sollte, die gedrückt wurde.

+0

Leider gibt PopupComponent.Name den Namen der Toolbar und nicht den ToolbuttonName zurück. Es funktioniert auf einer ListBox. Pieter. –