Taste dauerhaft gedrückt halten

  • Hi, gibt es in Autoit die Möglichkeit, eine Taste zu drücken (bsplsw."a") und solange wie ich a gedrückt halte wird vom Autoit Programm eine andere Taste (bsplsw. "b") gedrückt?
    Gruß, 0815-SCRPTR

  • Moin,

    jupp, geit, hab mal ein schnelles Beispiel geschrieben:

    Spoiler anzeigen
    [autoit]

    ;taste drücken solange eine andere taste gedrückt ist:
    #include <Misc.au3> ; für _IsPressed

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

    ;die nächsten kommen vom Koda Form Designer
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=C:\_AutoIT\AutoIt.de\tastedrueckenBeispiel.kxf
    $Form2 = GUICreate("Drücke a bekomme b Demo", 405, 294, 302, 218)
    $Edit1 = GUICtrlCreateEdit("", 8, 48, 377, 233)
    GUICtrlSetData(-1, "Edit1")
    $Label1 = GUICtrlCreateLabel("Unten in das Edit-feld kilcken und 'a' drücken", 8, 16, 218, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    ;DLL laden wie im Beispiel zu _IsPressed
    Global $dll = DllOpen("user32.dll")

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    If _IsPressed("41", $dll) = 1 Then ; 41 ist a - siehe Hilfe von _IsPressed
    Send("b") ; erklärt sich wohl von selbst
    EndIf
    WEnd

    [/autoit]

    So, jetzt kommt ein ABER ...
    wie du testen kannst sendet ein a auch ein b - aber auch das a, diesen Tastendruck fangen wir nicht ab. Wei das ginge weiss ich auch noch nicht ?(

    BLinz