2016-11-07 21 views
-1

사용자가 0-9 사이의 alt + 숫자를 누르면 확인하는 스크립트가 필요합니다. 스크립트는 누른 숫자를 변수에 저장해야합니다. 난 당신과 같이 사용할 수 있습니다 알고 : (사이비 코드)AutoHotKey 숫자 키 누름 감지

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

을하지만 어떻게 고도 + 키를 눌러 확인합니까? 그리고 숫자 키를 어떻게 변수에 넣을 수 있습니까?

참고 :이 같은 싶지 :

!number:: var = number 

그냥 명확하게하기 위해, 코드는 내가 좋은 작품을 썼다, 그러나 그것은 단 한 줄의 코드로 압축 할 수 있는지 궁금하네요.

+0

을 중지 작동하는 것 같다. 네가 무엇을 요구하는지 모르겠다. – 2501

+0

내 코드가 잘 작동한다는 것을 알고 있지만 두 번째 예제에서 보여준 것처럼 압축 할 수 있는지 궁금합니다. – user2173361

+0

나는 그렇게 할 수 있다고 생각합니다. 설명서에서 핫키 명령을 찾습니다. – 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

이것은 실제로 의도 한대로 작동합니다. 그것은 더 복잡하고 길어요. 그래도 awnser 주셔서 감사합니다. 나는이 일을 끝내기 위해 하나 또는 두 개의 라인 코드가 없다고 생각한다. 그러나 이것은 올바른 awnser이며 내가 무엇을 찾고 있었는지. – user2173361