![]() |
Problem mit PopupMenü
Ich möchte gerne ein Programm schreiben, bei dem man in das PopupMenü Einträge einfügen kann, durch die Programme gestartet werden. Das Einfügen ist auch nicht das Problem. Aber wie finde ich heraus, welches MenuItem (am besten der Index davon) genau angeklickt wurde, dass ich weiß welches Programm ich ausführen muss?
Vielen Dank schon mal im Vorraus |
Re: Problem mit PopupMenü
dafür bietet sich die tag eigenschaft des TMenuItems an.
|
Re: Problem mit PopupMenü
Hi,
du kannst die tag property des MenuItem als Diskriminator benutzen. Speicherst du dort eine Integer, dann kannst du damit im Ereignis OnCLick() eine case Anweisung steuern. Oder du hinterlegst einen Zeiger auf ein Objekt, welches alle notwendigen Informationen enthält. Neujahrsgrüße vom marabu |
Re: Problem mit PopupMenü
Den MenuItems Tags zuzuweisen mache. Aber mein Problem ist immer noch wie ich dann in dem OnClick Ereignis herausfinde, von welchem MenuItem es genau ausgeführt wurde, da alle MenuItems auf das selbe Ereignis verweisen.
|
Re: Problem mit PopupMenü
du kannst das so anstellen:
Delphi-Quellcode:
if Sender is TMenuItem then
begin case (Sender as TMenuItem).Tag of 0: RunTest((Sender as TMenuItem).Tag); 1: ; 2: ; end; end; |
Re: Problem mit PopupMenü
Vielen Dank für die gute Hilfe. Werds gleich mal ausprobieren :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 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