Ich möchte mit der UDF von Holger Kotsch ein TrayMenü mit Icons erstellen. Ich hab dazu das Beispiel Win2Tray an meine Bedürfnisse angepasst. Nun möchte ich das ganze im TrayOnEventMode machen. Nur leider kann ich den Eintrag "Exit" anklicken aber das Skript wird nicht beendet.
Spoiler anzeigen
#NoTrayIcon
Opt("TrayOnEventMode", 1)
#include <GUIConstants.au3>
#include "ModernMenu.au3"
$nTrayIcon1= _TrayIconCreate("Win2Tray", "shell32.dll", 12)
_TrayIconSetClick(-1, 16)
$TrayAbout= _TrayCreateItem(-1, "About")
_TrayItemSetIcon(-1, "shell32.dll", 23)
_TrayCreateItem(-1, "")
_TrayItemSetIcon(-1, "", 0)
$TrayExit= _TrayCreateItem(-1, "Exit")
_TrayItemSetIcon($TrayExit, "shell32.dll", 27)
TrayItemSetOnEvent($TrayExit, "_exit")
Func _exit()
Exit
EndFunc
While 1
Sleep(250)
WEnd
Edit: Hab gerade in einem anderen Beitrag gelesen das das TrayMenü bei der UDF ModernMenu mit GUICtrlCreateMenu erstellt wird und man das im GUIOnEventMode ausführen muss.
Edit 2: Nun möchte ich gerne mit GUICtrlRead den Text von einem Menü-Eintrag abfragen. Aber es wird ein leerer String angezeigt. Als Beispiel nehm ich den Menü-Eintrag About
Spoiler anzeigen
#NoTrayIcon
Opt("GUIOnEventMode", 1)
#include <GUIConstants.au3>
#include "ModernMenu.au3"
$nTrayIcon1 = _TrayIconCreate("Win2Tray", "shell32.dll", 12)
_TrayIconSetClick(-1, 16)
$TrayAbout = _TrayCreateItem(-1, "About")
_TrayItemSetIcon(-1, "shell32.dll", 23)
GUICtrlSetOnEvent($TrayAbout, "_exit")
_TrayCreateItem(-1, "")
_TrayItemSetIcon(-1, "", 0)
$TrayExit = _TrayCreateItem(-1, "Exit")
_TrayItemSetIcon($TrayExit, "shell32.dll", 27)
GUICtrlSetOnEvent($TrayExit, "_exit")
Func _exit()
Exit
EndFunc
Func _about()
MsgBox(0, "", GUICtrlRead(@GUI_CtrlId, 1))
EndFunc
While 1
Sleep(250)
WEnd