2014-11-03 5 views
0

응용 프로그램 기반 키 카운터를 만들려고합니다. 아래는 내 스크립트입니다Autohotkey 응용 프로그램 Keycounter

#UseHook 
KeyCount=0 
#If WinActive("Ahk_Class XLMAIN") Or WinActive("Ahk_Class Notepad") 
Loop 
{ 
Input, Key, L1 I V, , 
AscKey:=Asc(Key) 
If (AscKey > 31 && AscKey < 127) 
KeyCount:=KeyCount+1 
} 
#If 
^+o:: 
msgbox %KeyCount% 
return 

WinActive 명령은 활성 창이 Excel이나 메모장 일 경우 키 입력을 계산해야한다고 말합니다. 그러나이 스크립트는 모든 키 입력을 계산합니다. 내가 놓친 게 있니?

+0

는 #'대신'#의 IfWinActive'을 시도 도움이되기를 바랍니다 수 있습니다 If WinActive ("blahblah")'. Docs [here] (http://ahkscript.org/docs/commands/_IfWinActive.htm)를 참조하십시오. –

답변

1

당신은 유일한 단축키 및 hotstrings에 대한 #IF를 사용하지 않지만이

#UseHook 
KeyCount=0 


Loop 
{ 
    Input, Key, L1 I V 
    If (WinActive("Ahk_Class XLMAIN") Or WinActive("Ahk_Class Notepad")) 
    { 
     AscKey:=Asc(Key) 
     If (AscKey > 31 && AscKey < 127) 
     KeyCount++ 
    } 
} 


^+o:: 
msgbox %KeyCount% 
return 

처럼 한 Statment 경우 정상를 사용하는 것이