Cursor bei GUICtrlCreateMenu[Item]() ändern mit GUICtrlSetCursor()

  • Hallo Autoit-Gemeinde,
    ich möchte mein(e) Script(s) visuell etwas "aufpeppen", indem sich der Cursor bei jedem Überfahren mit der Maus von Buttos und Menüs sowie Menü-Unterpunkten (Items) von "normalem" Cursor in eine Hand mit "Klickfinger" ändert.
    Ich habe es für die Buttonfunktion GUICtrlCreateButton() mit GUICtrlSetCursor(-1, 0) hinbekommen.
    Bei der Anwendung dieser Funktion auf GUICtrlCreateMenu() bzw GUICtrlCreateMenuItem() fuktioniert das aber leider nicht.
    Was mache hier falsch?

    Ich hoffe, die Code-Extrakte sind aufschlußreich genug.
    Ach, ich habe auch mit den entsprechenden Ctrl-ID's statt "-1" versucht; leider auch kein Erfolg
    Vielleicht hat jemand 'ne Idee, vielen Dank schon mal im voraus.

    Lege dich nie schlafen ohne zu wissen,
    dass du an diesem Tag etwas Gutes getan hast.

  • Ich hab mal etwas getestet. Eine Lösung konnte ich leider nicht finden, aber ich kann das Problem eingrenzen:
    Das Menu sendet keine WM_NOTIFY Messages, oder leitet diese nicht an das Parentfenster weiter.

    Helfen würde vermutlich nur der Hook aller Messages und das Filtern der Messages auf die Controls und dann das Ändern (GuiSetCursor), wenn mit der Maus über das Menü gegangen wird, oder es verlassen wird.

    Eine einfachere Variante wäre das Abfragen über die Mausposition, das kostet aber mehr CPU. Außerdem müsste getestet werden, über welchem Menü man ist, ob das Submenü ausgeklappt ist,...

    Ich glaub es lohnt die Mühe nicht. Mich würde es auch nur verwirren, wenn der Mauszeiger überm Menü ne Hand wird. Normal wird die Hand nur genutzt um dort, wo man sich nicht sicher ist, anzuzeigen, dass es klickbar ist, also z.B. wenn ein Text angeklickt werden kann. Im Internet ist es verbreiteter, da es dort kein Festgelegtes aussehen gibt, sondern alles Mögliche angeklickt werden kann.

    Mein Versuch:

    Ich hab auch Probiert das Callback der _WinProc umzuleiten, sowohl vom Fenster als auch vom Menü. Beim Fenster kamen keine Nachrichten, wenn das Menü gehovert wurde und das Menü hat garkeine Nachrichten abgeschickt.

    Vielleicht hat ja noch jemand anderes eine Idee :)

    MfG Kanashius

  • Hallo Kanashius,


    vielen Dank für Deinen Vorschlag. Recht hast Du, es muss nicht sein. Die Funktionalität des Scriptes ist auf jeden gewährleistet.
    Es war nur halt so ein Gedanke, da das compilierte Script von jemanden genutzt werden soll, dem man besser auf eine "Klick-Möglichkeit" mit der Nase drauf stößt. Der 2. Grund für diese optische Spielerei war dem Motto: "Warum? - Weil ich's kann!" -geschuldet.
    Ich werde Deine Idee aufgreifen und versuchen sie einzubauen. Über Erfolg oder Mißerfolg werde ich hier berichten.

    Vielen Dank noch einmal ....

    MfG., Autoitler

    Lege dich nie schlafen ohne zu wissen,
    dass du an diesem Tag etwas Gutes getan hast.