![]() |
Popup-Menü woher?
Hallo
ich habe auf meinem Forumlar zwei Memos, beide habe das gleiche Popupmenü definiert. Wenn ich jetzt auf ein PopUpMenüItem klicke, soll in das Memo, von dem das Popupmeü aufgerufen wurde ein Text eingefügt werden. Der "Sender" in dem OnClick verweist halt leider auf das MenüItem und nicht auf das Memo Danke TO |
Du könntest Dir in einer Variable merken, welches Memo zuletzt aktiv war (siehe hierzu Event "onEnter"). Eigentlich reichts es dazu, sich das Tag des Memos in einer Integer-Variablen zu merken.
Grüße, Daniel |
Na ja, wenn du "(Sender as TMenuItem)" sowieso benutzt, dann könntest du ja auch die Funktion "GetParentMenu benutzen, die dir die zugehörige Komponente zurückliefern sollte. Und von da aus geht´s weiter aufwärts ...
Aber was ist eigentlich ein bleiches Menü? *hi hi* Eins mit zuvielen Items? :wink: |
ja, soweit war ich auch schon, nur wie kann ich vom TPopupmenu auf den auslöser schließen?
|
Sorry, mein Fehler. Vergiss den Sender! In der Hilfe gibt´s eine Erklärung zu "PopupComponent", und -voilá-
Code:
Angenommen, dies wäre dein OnClick-Event. 8)
[b]procedure[/b] TForm1.OnMyClick(Sender: TObject);
[b]begin[/b] ShowMessage(PopupMenu1.PopupComponent.Name); [b]end[/b]; |
genau das habe ich gesucht!
|
Ich würde Dir folgenden Ansatz empfehlen (sicher ist sicher)
Code:
[edit]Sender --> PopupMenu1.PopupComponent [/edit]
begin
if [color=#ff0008]PopupMenu1.PopupComponent[/color] is TMemo then // PopUp Menü kam vom Memo begin if [color=#ff0008]PopupMenu1.PopupComponent[/color] = Memo1 then begin // kam von Memo 1 end else if [color=#ff0008]PopupMenu1.PopupComponent[/color] = Memo2 then begin // kam von Memo 2 end else begin // kam von einem anderen Memo end; end else begin // Aufruf kam nicht von einem Memo end; end; |
und genau das geht nicht, weil der Sender nicht das Memo Angibt sondern das PopUpMenuItem.
|
:oops: Wieder mal voll daneben. Entsprechend geändert. :oops:
|
Erscheint logischer
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz