2016-11-07 107 views
-1

我想要一个脚本,检查用户何时按0至9之间的alt +数字。 该脚本应该将按下的数字保存在变量中。我知道你可以使用类似:(伪代码)AutoHotKey检测数字键按

!1:: var = 1 
!2:: var = 2 
!3:: var = 3 
... 

但我要如何检查ALT +按键?如何将数字键按入变量?

注:我想是这样的:

!number:: var = number 

只是要清楚,代码我写的优秀作品,但我想知道,如果它可以被压制成一行代码。

+0

这正是你的代码已经在这样做。我不确定你在问什么。 – 2501

+0

我知道我的代码运行良好,但我想知道是否可以像我在第二个示例 – user2173361

+0

中显示的那样压缩它,我认为你可以。查看Hotkey命令的文档。 – 2501

回答

1

这似乎是工作

停止正在运行的脚本,一键F12

Loop, 10 
    HotKey, % "~*" A_Index - 1, KeyDetect 
return 

KeyDetect: 
    If (A_ThisHotkey = "") 
     Return 
    mods := "Alt" 
    prefix := "" 
    Loop, Parse, mods, | 
     if GetKeyState(A_LoopField) 
      prefix .= A_LoopField " + " 
    if (!prefix && !ShowSingleKey) 
     return 
    key := SubStr(A_ThisHotkey, 3) 
    if (key = " ") 
     key := "Space" 

    MsgBox, % prefix key ; Test Message (Result) 
return 

F12::ExitApp, 0 
+0

这确实按照预期工作。虽然它更复杂,方式更长。尽管如此,谢谢你的帮助。我想没有一行或两行代码来完成这项工作。然而,这是正确的,我正在寻找的。 – user2173361