관리 메뉴

ㄴrㅎnㅂrㄹrㄱi

오토핫키 강좌 (초보편 #05) 본문

AUTOHOTKEY/도움말

오토핫키 강좌 (초보편 #05)

님투 2009. 1. 6. 22:46
반응형

오토핫키도 기타 다른 언어와 마찬가지로 {...} (block)  구조를 가지고 있습니다.  하지만 오토핫키는 보다 다양한  방법을 제시하고 있습니다.

if var = 1 {
    if var2 = abc
        ToolTip,  %var% / %var2% 이네요
} else
    return

 

보시다시피 전혀 어울리지 않을 것 같은 그리고 동작하지 않을 것같은 구조네요 하지만 오토핫키는 이 구분을 빠르게 실행합니다. 불필요한건 죄다 빼고 꼭 필요한 부분만 사용하는게 오토핫키 입니다.

if (var = 1){
    if (var2 = abc){
        ToolTip,  %var% / %var2% 이네요
    }
} else {
    return
}

 

와 같이 되어야만 동작하는게 아니죠 if var = 1  과  if (var = 1) 은 완전 똑같이 동작합니다. 심지어 아래와 같이 해도 되죠

if x = 1
MsgBox, 메세지 1  
   MsgBox, 메세지 1
} MsgBox, 메세지 2 (이건 블럭 밖의 메세지)

 

다중 조건문 또한 처리가 가능합니다.

if (x > y) {
} else if (x < y) {
} else if (x = y) {
} else {
}

그럼 오토핫키에서만 있는 특수한 IF .. ELSE  를 배워보도록 하죠..

IfWinExist, 제목 없음 - 메모장          ; 새로운 메모장이 활성화 되어 있는지에 대한 조건문입니다.
{
    WinActivate                              ; 메모장을 액트브 (활성화) 시키고
    Send, This is a test.{Enter}        ; This is a test. 를 입력후 엔터
} else {
    MouseClick, left, 100, 200          ;  X,Y 좌표에 마우스를 클릭한다.
}

 

와 같은 해당 하는 윈도우가 존재하는가 안하는가에 대한 조건문도 있습니다.

이 조건문은 특이하지만 이런류의 조건문은 몇개 더 존재합니다.  좀더 깊은 내용은 다음 강의에서 거론하도록 하겠습니다.

IfWinExist / IfWinNotExist, IfWinActive / IfWinNotActive, IfInString / IfNotInString,
IfExist / IfNotExist, IfMsgBox, IfInString / IfNotInString
If/IfEqual/IfNotEqual/IfLess/IfLessOrEqual/IfGreater/IfGreaterOrEqual, IfExist / IfNotExist

 

와 같이 다양하고 활용 빈도들이 높은 조건문들입니다.
위에서 IfMsgBox 는 MsgBox 를 설명하면서 언급했던 조건문입니다.  다시한번  이전 강의를 살펴 보는 것도 좋은 방법인거 같습니다.

반응형
Comments