Autohotkey 自动热键。按住两个按钮并轻按另一个按钮以增加音量

Autohotkey 自动热键。按住两个按钮并轻按另一个按钮以增加音量,autohotkey,Autohotkey,我在构建ahk快捷方式脚本以增加/减少音量时遇到了困难。其想法是按住LAlt+LShift并轻触F12,以增加每个轻触一步。 按下LAlt和LSShift的顺序应该无关紧要 到目前为止,我想到了这个: !+:: While (GetKeyState("LShift","P")) and (GetKeyState("LAlt","P")) { F12::Send {Volume_Up} } Return 但不知何故,它增加了持有LAlt和录音F12的音量。

我在构建ahk快捷方式脚本以增加/减少音量时遇到了困难。其想法是按住LAlt+LShift并轻触F12,以增加每个轻触一步。 按下LAlt和LSShift的顺序应该无关紧要

到目前为止,我想到了这个:

!+::
    While (GetKeyState("LShift","P")) and (GetKeyState("LAlt","P"))
    {
        F12::Send {Volume_Up}
    }
Return
但不知何故,它增加了持有LAlt和录音F12的音量。LShift变红了

这有什么不对…

    F12::Send {Volume_Up}
不是命令,而是热键分配。不能在可执行上下文中使用它。它实际上是以下内容的缩写:

F12::
send {volume_up}
return
您不希望在应该执行的行之间有一个
返回值,是吗

从文档中可以看出,您只能将两个热键轻松组合起来执行一个操作,如按a和b键时按下的
a&b::msgbox。例如,对于a、b和c,您需要一些变通方法,如下面划掉的旧答案

但是,您可以根据需要向热键添加任意多的修改器。修饰符是
alt、
+
shift、
#
win等等(请看一看)

因此,您可以简单地使用

<!+F12::send {volume_up}

*


关于
*
的含义,感谢您提供的有用信息!有没有一种方法可以设置你的最后一个方法,使按下Alt和Shift的顺序无关紧要?天哪。为什么AHK在Stackoverflow上的活动如此之少。如果有更多的人读过我的帖子,就会得到5张反对票,因为这只是胡说八道。我更新了我的答案,整个事情都很简单哈哈,很简单!很好。首先,我想到了复杂的方法,所以我想这是我的责任:-)谢谢你的帮助!
#if getKeyState("LShift", "P")
    *<!F12::send {volume_up}
#if
*<!F12::
    if(getKeyState("LShift","P"))
        send {volume_up}
return