Autohotkey:仅当不受限于特定应用程序时,具有Alt键的命令才能正常工作

时间:2012-07-07 17:50:06

标签: autohotkey

我正在尝试使用Autohotkey向应用程序添加自定义键盘命令。 在许多热键中,我想将 alt 键与我选择的其他键(任何标准字母)结合使用。

一切正常,只要我不限制它们的使用方式只能在目标应用程序中工作(通过#IfWinActive指令)。如果我这样做,热键本身仍然可以工作,但是他们的行为很奇怪。

我发现如果

,它们会被激活

a)我按住alt键然后按第二个键(在我的情况下是'b'键)两次 或

b)我连续两次使用此热键,两次触发之间的延迟非常短 - 以上两种情况实际上可能是1例。我不确定......

  • 使用 Shift CTRL 执行相同操作时没有任何问题。
  • 'b'键不​​是导致问题的原因 - 没有 alt +'letter'组合有效。
  • 我已尝试过所有SendModes,但到目前为止没有效果。

代码示例:

#IfWinActive, MyAppTitle ahk_class MyAppClass
!b::
click 367, 86
return

1 个答案:

答案 0 :(得分:0)

AutoHotkey中的Alt + letter命令(例如!b)无问题地工作。这篇文章的版本可能包含某些错误或者是当前版本的过时版本。

对于您的代码,可以这样做:

!b::
WinGetTitle, Title, A
if (RegExMatch(Title, "MyAppTitle"))
{
    MouseClick, left, 367, 86
}
return