MouseUP auslösen wenn MouseDown

  • Hallo

    ich möchte gerne ein Script erstellen, dass sobald ich die linke Maustaste drücke automatisch das Event auslößt "linke Maustaste loslassen"

    irgendwie komme ich da nicht weiter ... bisher habe ich mir sowas hier zusammengebastelt, was aber leider nicht funktioniert:

    #include <GUIConstantsEx.au3>

    While 1
    $msg = GUIGetMsg()


    if $msg = $GUI_EVENT_PRIMARYDOWN THEN
    MouseUp("left")
    endif

    Sleep(1)
    WEnd


    als weiteres Problem sehe ich vorallem, dass er das eigentliche MouseUp event dann ignorieren soll.
    Meine Frage wäre nun:
    Gibt es eine Möglichkeit die Art eines Events (-> linke maustaste gedrückt) per If Abfrage zu ermitteln, und sollte dieses dann eintreten, automatisch MouseUp auszulösen, dann aber für eine gewisse Zeit das MouseUp zu sperren (z.B. 0,5sec lang)

    wäre schön wenn mir jemand helfen könnte

  • Vielen Dank ; )

    Für ein Bildbearbeitungsprogramm, das ist so auf Dauer ziemlich nervig und ich verspreche mir davon eine Verbesserung
    Bin mir nur nicht ganz sicher ob das überhaupt machbar ist, das blockieren des MouseUp Events würde ja dann auch mein MouseUp Event blockieren :huh:

  • Möchtest Du, wenn Du klickst, 0.5 Sekunden die Maus gedrückt halten und sie dann automatisch loslassen?

  • ne er soll direkt wieder automatisch loslassen für mich sozusagen bevor ich die maustaste loslasse

    bin hier fleißig am rumprobieren aber irgendwie : (

  • Mit

    [autoit]

    If _IsPressed("01") Then ...

    [/autoit]

    kannst Du abfragen, ob die Linke Maustaste gedrückt wird.

  • ah das ist schonmal was. Danke : )

    gibt es auch eine Möglichkeit dann die linke Maustaste für ein paar millisekunden zu blockieren? damit dann nicht doppelt "mouseup" ausgelösst wird?

  • hm ne ; )

    aber habe die Lösung selber gefunden:

    #include <BlockInputEx.au3>
    #include <Array.au3>
    #include <misc.au3>

    HotKeySet("{ESC}", "_Quit")


    While 1

    If _IsPressed("01") Then
    MouseUp("left")
    _BlockInputEx(2, "{MMOVE}|{MWSCROLL}")
    Sleep(10)
    _BlockInput_UnhookWinHooks_Proc()
    endif

    WEnd


    Func _Quit()
    Exit
    EndFunc


    vielen Dank nochmal xp_fan! :)