Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TMenuItem zur Laufzeit löschen (2. Event auslösen) (https://www.delphipraxis.net/155246-tmenuitem-zur-laufzeit-loeschen-2-event-ausloesen.html)

litsa 14. Okt 2010 14:45

Delphi-Version: 2006

TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Hallo,

ich habe ein TMainMenu und erzeuge Untermenüs (Runtime). Für diese habe ich ein OnClick Event, das ich dann auch problemlos aufrufe. Bis hierhin klappt auch alles. Allerdings weiss ich nicht wie ich mit einem weiteren Event ein Untermenü lösche. Also es geht nicht um das Löschen an sich, sondern wie ich das überhaupt auslösen soll. Habe z.B. nach einem KeyDown oder KeyPress gesucht aber nicht gefunden (sollte ich das OnKeyDown Event der TForm nutzen und prüfen ob ein Untermenü selektiert ist?). Mir würde auch ein Rightclick(PopUpMenu) reichen wenn's mit der Keymethode nicht geht, ich will ja bloß ein weiteres Event auslösen.

Danke, Eva

DeddyH 14. Okt 2010 14:47

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Event wovon? Sry, ich verstehe Dich gerade nicht so richtig. Wann soll das Menü denn genau gelöscht werden?

litsa 14. Okt 2010 14:52

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Ich möchte das TMenuItem aus dem Menü entfernen. Z.B. rechts drauf klicken, dann soll ein kleines PopUp erscheinen wo "Delete" steht das man dann zum Löschen des Untermenüs anklickt. Es geht mir nur darum wie ich das auslöse (es kann z.B. auch statt es zu löschen eine MessageBox erscheinen, egal was...)

Sir Rufo 14. Okt 2010 14:55

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Das PopUp wo du dann klickst hat doch ein OnClick-Event

Quasi fast alles visuelle hat ein OnClick ;) ich muss es nur zulassen

litsa 14. Okt 2010 14:59

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Wenn ich bei einem TMenuItem in die Eigenschaften gehe finde ich keine Möglichkeit ein PopUp zu zuordnnen...und auch kein OnKeyDown.... wie rufe ich das auf?

Danke, Eva

Sir Rufo 14. Okt 2010 15:15

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Das geht imho nicht (hab das noch nie ausprobiert) weil dir beim PopUp aufpoppen das Menü wegpoppt und dem User der Kontext fehlt uns sich gefoppt fühlt ;)

Im OnClick von TMenuItem kannst du ja mal spaßeshalber ein PopUp aufmachen lassen

toms 14. Okt 2010 19:28

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

Im Anhang findest du ein Beispiel um ein MenuItem via rechter Maustaste zu löschen.
Beim Rechtsklicken auf ein MenuItem erscheint ein PopupMenu mit einem Eintrag "löschen".

Der Code basiert größtenteils auf einem Code von stackoverflow

litsa 14. Okt 2010 19:56

AW: TMenuItem zur Laufzeit löschen (2. Event auslösen)
 
Zitat:

Zitat von toms (Beitrag 1055840)
Hallo,

Im Anhang findest du ein Beispiel um ein MenuItem via rechter Maustaste zu löschen.
Beim Rechtsklicken auf ein MenuItem erscheint ein PopupMenu mit einem Eintrag "löschen".

Der Code basiert größtenteils auf einem Code von stackoverflow

Habe es in meinem TMainMenu eingebunden und es klappt! Genau danach habe ich gesucht!! Vielen lieben Dank! Danke auch an die anderen!

Eva


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz