Per TrayIcon Programm abbechen

  • Ich möchte einen Knopf erzeugen, wie er auch im std. TrayMenü bei AutoIt Skripten ist.
    Du einen Klick soll ein Programm, egal was es gerade macht, abgebrochen werden.
    Nur klappt das nicht, wenn ich versuche das nachzubauen:

    [autoit]

    #Include <Constants.au3>

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

    Opt("TrayMenuMode", 1)

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

    $exititem = TrayCreateItem("Beenden")

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

    While 1
    if TrayItemGetState($exititem) = $TRAY_CHECKED then exit
    $msg = TrayGetMsg()
    Select
    Case $msg = $exititem
    ExitLoop
    EndSelect
    sleep(2*100)
    WEnd

    [/autoit]


    Es soll einfach durch einen Klickt auf ein Element im TrayMenü das Programm unverzüglich abgebrochen werden. Wie mache ich das?

  • Hier:

    [autoit]

    Opt("TrayMenuMode", 1)

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

    $exititem = TrayCreateItem("Beenden")

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

    While 1
    $msg = TrayGetMsg()
    Select
    Case $msg = $exititem
    Exit
    EndSelect
    WEnd

    [/autoit]

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Pff, nein :P

    Mit dem sleep() habe ich ja simuliert, dass das Programm läuft und gerade nicht reagiert.
    Dann soll man mit "Beenden" auch das Programm abbrechen können!

    Selbst bei meinem sleep(200), beendet der das Programm erst nach 10-20s.
    Wenn ich das

    [autoit]

    if TrayItemGetState($exititem) = $TRAY_CHECKED then exit

    [/autoit]

    noch entferne, dann beendet er das Programm nie ...

  • Dann ist schlicht die Antwort: Geht nicht mit Boardmitteln.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.