키보드입력과 마우스클릭 그리고 Sleep 까지 배웠다면 기본적인 자동프로그램을 제작하실 수 있습니다.
하지만 아직 Loop, While 같은 반복명령어를 모르신다면
Send, A
Sleep, 1000
Send, A
Sleep, 1000
이런식으로 적고 계실껍니다. 하지만 Loop를 이용하면
Loop, 2
{
Send, A
Sleep, 1000
}
이렇게 하시면되죠
오늘 배울 명령어는 반복문이라 부르는 매우 편리한 것입니다.
Loop, 횟수
●횟수 예) Loop, 5
생략시 무한반복합니다, 무한반복을 종료하기 위해서는 루프를 탈출시키는 명령어 break를 사용해야합니다.
*A_Index 는 루프가 몇번쨰 실행중인지를 나타내는 변수입니다. (변수에 대해서는 다음강좌에서 배웁니다)
예제를 확인해볼까요?
루프문으로 사용할 명령어들을 {, } 괄호를 이용해 감싸줘어야합니다.
Loop, 7
{
MsgBox, %A_Index%
Sleep, 100
}
return
실행시키면 1부터 시작하는 메시지박스가 7까지 나타날껍니다.
반복문 심화편
Loop는 이 외에도 다른 기능이 많고, 비슷한 기능을 하는 While, Loop~ Until 등이 있지만
여러분이 아직 조건문을 배우지 않았더라면, 사용이 어렵습니다.
밑에 설명하는 반복문은 다음강의인 조건문, 변수강의를 읽고 다시 읽어보세요.
While 조건문
●조건문 예) While x < y
모든 조건문이면 서술이 가능합니다. 하지만 반드시 익스프레션으로 서술해야합니다.
While은 이 조건문이 참(사실)일 경우에만 반복을 합니다. 거짓으로 판명될때는 반복을 중지합니다.
예제
A := 10
B := 1
While A > B
{
MsgBox, 아직 A가 B보다 큽니다.
B ++
}
실행해보면, B가 A보다 커지기전가지는 계속해서 메시지박스가 뜨는걸 확인하실수있습니다.
Loop {
명령어들
} Until 조건문
●조건문
조건문이 참이 될 경우에만 반복을 종료합니다. 거짓일 경우에는 한번 더 반복합니다. 조건문은 반드시 익스프레션이어야합니다.
예제
A := 10
B := 1
Loop {
MsgBox, 아직 A가 B보다 큽니다.
B ++
} Until B > A
'프로그래밍 > AHK 레퍼런스' 카테고리의 다른 글
[명령어] If 조건문, 케이스분류하기 (6) | 2015.01.13 |
---|---|
[명령어] Break, Continue 반복문을 탈출하기 (3) | 2015.01.13 |
[명령어] MouseClick 마우스클릭하거나 드래그 또는 누르고있기 (9) | 2015.01.11 |
[명령어] Sleep 일정 시간 쉰다음 진행하기 (1) | 2015.01.10 |
[문법] HotKey 핫키, 키를 눌렀을때 명령을 실행 (10) | 2015.01.09 |