首页 > 解决方案 > 使用带有功能键、修改键和字母键的热键

问题描述

例如,如何使用响应按F24 和 Shift D的热键?我想按一个功能键(F#,而不是标有“fn”的键)、一个修饰键和一个字母。

我正在使用带有多个侧键的鼠标;当按下鼠标按钮之一时,我正在使用 G Hub 发送 F24。所以我试图让那个鼠标按钮充当另一个修饰键。

我可以分配一个只有 F24 和一个字母键的热键。但是无论我尝试什么,我都无法通过添加修饰键来做到这一点。当我尝试运行脚本时,我收到错误“无效密钥”。我已经用Shift键和Alt键试过了,都不管用。

这有效:

F24 & D::MsgBox, hello

我已经尝试了文档中显示的所有替代语法,但以下都不起作用。

F24 & {Alt} & D::MsgBox, hello
!{F42}D::
!{F42} & D::
F24 & ! & D::
{Alt} {F24} D::
F24 & +D::

标签: autohotkey

解决方案


如您可以使用的文档中所述,不支持3 个或更多热键的组合,#if并且GetKeyState

我不知道你是如何生成 F24 如果你首先按下 shift 然后 F12 和 d 如果你的键盘生成 F24 只需将 F12 替换为 F24

#if GetKeyState("Shift", "P")
F12 & d::MsgBox works
#If

推荐阅读