AutoHotKey键SEQUENCE,而不仅仅是单键热键

Jos*_*hua 34 autohotkey keyboard-shortcuts

我不是傻瓜......真的.如何在AutoHotKey中映射关键SEQUENCE(即:Ctrl+ Q,F).

我有Ctrl+ Q下来:

^q::
Run Code Online (Sandbox Code Playgroud)

我甚至得到了F:

f::
Run Code Online (Sandbox Code Playgroud)

帮助文件中的示例甚至显示了如何连续执行两次击键:

Numpad0 & Numpad1::
Run Code Online (Sandbox Code Playgroud)

但它不适用于:

^q & f ::
Run Code Online (Sandbox Code Playgroud)

或者以下任何一种:

LCtrl & q & f::
^q & ^f::
^q^f::
^qf::
Run Code Online (Sandbox Code Playgroud)

当其中一个键是Ctrl关键时,如何完成按键序列触发某事?我考虑使用HOTSTRING,但Ctrl在这种情况下无法弄清楚如何包含角色!

Jos*_*hua 30

好的; 答案似乎是:

^q::
Input Key, L1
if Key=f
...some code here...
return
Run Code Online (Sandbox Code Playgroud)


And*_*ong 5

如果有人在寻找类似的事情,但实际上希望CtrlQ+ CtrlF,并如果Ctrl是各地举行(所以,一些,这似乎是CtrlQ+ F),然后在这里是如何做到这一点:

$Ctrl::Send {Ctrl Down}
$Ctrl UP::
    ChordIsBroken := True
    Send {Ctrl Up}
    Return
^q::
    ChordIsBroken := False
    Input, OutputVar, L1 M
    If (!ChordIsBroken && Asc(OutputVar) = 6)
    {
        MsgBox "Hello, World!"
    }
    Else
    {
        SendInput %OutputVar%
    }
    Return
Run Code Online (Sandbox Code Playgroud)

有关我的解释,请参阅https://superuser.com/a/725303/145431.