Tray Menü funktioniert nicht wirklich

  • Hallo und einen schönen Guten Abend,

    ich habe ein Programm mit mitlerweile mehrern hundert zweilen geschrieben. Deshalb habe ich hier nur einen kurzen Auszug mit der wichtigsten Stelle.
    Es geht darum, das die Msgbox nicht aufgeht wenn ich im Traymenü auf das Item klicke.
    Das Traymenü geht wunderbar, doch tut sich absolut garnichts wenn ich drauf klicke.

    Könnt Ihr mir sagen wo der Fehler liegt ?

    Danke LG Tim

    [autoit]

    Opt("TrayMenuMode", 1)

    [/autoit][autoit][/autoit][autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiStatusBar.au3>
    #include <WindowsConstants.au3>
    #include <date.au3>
    #include <EditConstants.au3>
    #include <StaticConstants.au3>
    #include <Constants.au3>

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    #Region ### START Koda GUI section ### Form=D:\-------\main.kxf
    $GUImain = GUICreate($name, 323, 435, 803, 300)
    ......

    [/autoit][autoit][/autoit][autoit]

    Local $traynator = TrayCreateItem("No")
    Local $trayte = TrayCreateItem("te")
    Local $trayo = TrayCreateItem("Io")
    TrayCreateItem("")
    Local $trayet = TrayCreateItem("Sn")
    TraySetState()
    ....

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    While 1

    [/autoit][autoit][/autoit][autoit]

    $nMsg = GUIGetMsg(1)
    Switch $nMsg[0]

    [/autoit][autoit][/autoit][autoit]

    Case $GUI_EVENT_CLOSE
    ......

    [/autoit][autoit][/autoit][autoit]

    Case $trayo
    MsgBox(0,"","")

    [/autoit][autoit][/autoit][autoit]

    Case $nrechner
    _rechner()

    [/autoit][autoit][/autoit][autoit]

    .......
    EndSwitch

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    WEnd

    [/autoit]
  • ich würde ja Select Case nehmen nicht Switch

    Und dann bei jedem Case zwei variablen verglichen
    Case $msg = $GUI_EVENT_CLOSE

    Das wird viel übersichtlicher und du kannst TrayGetMsg() und GUIGetMsg() und was immer du willst im gleichen Konstrukt vergleichen.

    aber noch viel besser wird es mit

    Opt("TrayMenuMode", 1)
    Opt("TrayOnEventMode", 1)
    und
    Opt("GUIOnEventMode", 1)

    Und dann mit Funktionen arbeiten. Alles in ne Endlosschleife packen :wacko: hab kein Plan wieso man dass nutzen sollte.
    Aber die Hilfe ist halt voll davon. Kann man super Spagetticode GUIs mit machen :thumbup: