#ifwinactive & #ifwinexist 윈도우창 마다 핫키의 용도를 다르게 사용하는 방법
참고주소 : http://www.autohotkey.com/docs/commands/_IfWinActive.htm
아래의 내용을 분석해 보자면,
메모장, 워드패드, 두 창이 아닌 다른 윈도우창 일 경우 각각 ^!C가 수행되는 결과가 다르다.
즉, ^!C( {ctrl}+{alt}+C} 의 역할이 윈도우마다 다른 결과를 보이도록 하는 것이다.
Variant (Duplicate) HotkeysA particular hotkey or hotstring can be defined more than once in the script if each definition has different #IfWin criteria. These are known as hotkey variants. For example: #IfWinActive ahk_class Notepad ^!c::MsgBox You pressed Control+Alt+C in Notepad. #IfWinActive ahk_class WordPadClass ^!c::MsgBox You pressed Control+Alt+C in WordPad. #IfWinActive ^!c::MsgBox You pressed Control+Alt+C in a window other than Notepad/WordPad.
|
그럼 이를 조금 다르게 응용해 보자면,
첫번째는 노트패드 윈도우 창이 액티브 상황에서 ^!C( {ctrl}+{alt}+C} 핫키를 실행시키면
You pressed Control+Alt+C in Notepad. 를 메시지 띄운 다음, 노트패드 메시지를 다시 띄운다.
두번째는 워드패드 윈도우 창이 액티브되면 바로,
You pressed Control+Alt+C in WordPad. 를 메시지 띄운 다음, 워드패드 메시지를 다시 띄운다.
세번째는 노트패드, 워드패드 이외의 창에서 ^!C( {ctrl}+{alt}+C} 핫키를 실행시키면
You pressed Control+Alt+C in a window other than Notepad/WordPad. 를 메시지 띄운다.
#IfWinActive ahk_class Notepad { ^!c:: MsgBox You pressed Control+Alt+C in Notepad. msgbox 노트패드 return } #IfWinActive ahk_class WordPadClass { MsgBox You pressed Control+Alt+C in WordPad. msgbox 워드패드 return } #IfWinActive ^!c::MsgBox You pressed Control+Alt+C in a window other than Notepad/WordPad.
|