Tray Eintrag mit Rechtklick Menü?

  • Hallo zusammen,

    ich hab da wieder mal eine Idee nur wie setze ich das an besten um. Ich habe das Normale Tray Menü von autoit, wenn ich das geöffnet habe und dort ein Rechtsklick auf ein eintrag mach soll er mir ein weiteres Menü mit einträgen öffnen kann man diese irgendwie mit AutoIT umsetzen? Wäre für jede Hilfe dankbar.

    Gruss

  • Hallo,

    ob das mit dem Rechtsklick funktioniert kann ich dir nicht sagen.
    Eine Alternative könnte jedoch vllt so etwas in dieser Richtung sein:

    [autoit]

    $menue = TrayCreateMenu("Menü")
    TrayCreateItem("Untermenü1",$menue)
    TrayCreateItem("Untermenü2",$menue)

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

    while 1
    wend

    [/autoit]
    • Offizieller Beitrag
    Spoiler anzeigen
    [autoit]

    #Include <Constants.au3>

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

    Opt("TrayMenuMode",1) ; Standard Traymenüeinträge (Skript pausieren/beenden) werden nicht angezeigt.

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

    TrayCreateItem("Eintrag 1")
    $Test=TrayCreateMenu("Untermenü")
    TrayCreateItem("Eintrag 1",$Test,-1,-1)
    TrayCreateItem("Eintrag 2",$Test,-1,-1)
    TrayCreateItem("")
    $aboutitem = TrayCreateItem("Über")
    TrayCreateItem("")
    $exititem = TrayCreateItem("Beenden")

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

    TraySetState()

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

    While 1
    $msg = TrayGetMsg()
    Select
    Case $msg = 0
    ContinueLoop
    Case $msg = $aboutitem
    Msgbox(64, "Über:", "AutoIt3-Tray-Beispiel mit Gruppen von Menüeinträgen.")
    Case $msg = $exititem
    ExitLoop
    EndSelect
    WEnd

    [/autoit]
  • Und was genau passt nicht an dem was Raupi geschrieben hat?

    Wenn ich mir deine Anforderung durchlese und Raupis Script, würd ich sagen dass es genau das ist.

    Vllt malste was in Paint und hängst es als Bild oder beschreibst es deutlicher.

    Gruß

    Prajoss

    "Never touch a running System!"

  • Das von Raupi funktioniert ja aber halt nicht wie gewünscht. Das von Raupi klappt mir ja ein Menü auf wenn ich mit der Maus auf ein Eintrag fahre. Was ich aber will ist halt das so ein Menü per Rechtsklick aufgeht. Wie das Rechtsklick menü in windows nur bezogen auf den Tray Item.

  • Versteh ich jetzt ehrlich gesagt nicht, mach doch nen Screenshot von der Funktionalität, die anscheinend Windows beinhaltet.
    Oder eine detailierte Beschreibung, was genau und wann passieren soll.
    Z.b.

    Das möchte ich haben.

    - Rechtsklick auf Tray Icon
    - Öffnen eines Menüs

    Gruß

    Prajoss

    PS: Je genauer du dein Problem / Anliegen erläuterst, desto besser und schneller können dir andere helfen

    "Never touch a running System!"

  • - Rechtsklick auf TrayIcon
    - Mit der Maus auf ein Eintrag
    - Rechtsklick auf den Eintrag
    - Menü soll aufgehen

    Und wegen der Windows funktionalität so ein menü gibs überall z.b. in dein browser machste ja auch Rechtsklick und hast ein Menü und sowas halt

  • Und wegen der Windows funktionalität so ein menü gibs überall z.b. in dein browser machste ja auch Rechtsklick und hast ein Menü und sowas halt

    mein Browser hat kein Tray-Menu. Du meinst warscheins Context-Menüs:

    [autoit]

    GUICtrlCreateContextMenu

    [/autoit]


    Was hast du den an @Raupi 's Skript auszusetzen, es verhält sich absolut Windows konform,

    mfg (Auto)Bert

  • Zuerst dachte ich, ich habs verstanden..
    dann hab ichs nochmal gelesen und blicke nicht mehr durch ?(

    Du möchtest doch einfach, dass wenn du auf einen Traymenüpunkt rechtsklickst, dass irgendwas passiert, oder?

    "Never touch a running System!"

  • Nein ich glaube er möchte ein TrayMenu das sich erst einmal ganz normal öffnet und Einträge beinhaltet. Nun soll es, soweit ich verstanden habe, möglich sein, einen Eintrag mit der rechten Maustaste anzuklicken, um ein "neues" TrayMenu aufzurufen.
    Quasi die Möglichkeit die Raupi aufgezeigt hat, nur das sich dieses SeitenMenu über einen Rechtsklick öffnet und nicht wenn man mit der Maus darüber fährt.

  • Hmm, ich hab da mal was zusammengebastelt ...

    Also, noch kurz zur Erklärung: Mit dem normalen AutoIt Traymenü funktioniert es nicht.
    Man muss die WM_MENURBUTTONUP Nachricht verarbeiten und ebenso empfiehlt es sich WM_COMMAND zu verarbeiten. Es geht auch ohne, aber der Klick auf das Popupmenü des Popupmenüs (;)) kommt über GUIGetMsg verspätet, zu spät, in die Schleife.

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.


    Gruß
    Greenhorn