오토핫키에는 메시지 박스를 띄우는 기능이 있다. 메시지 박스를 적절하게 활용하면 스크립트가 제대로 활성화되었는지, 제대로 종료되었는지를 확인할 수 있다. 또한 메시지 박스를 이용해 스크립트를 원하는 시점에 중단하고, 다시 재개되도록 할 수도 있다. 그리고 메시지 박스에 포함된 "예", "아니오" 중 어떤 버튼을 누르느냐에 따라 다른 명령을 실행하게 할 수도 있다.
1. 오토핫키 메시지 박스 만들기
예를 들어 특정 스크립트를 시작했음을 알리고, OK를 눌러야 진행되는 메시지 박스를 만들어보자.
지난번에 메인 스크립트에 다음과 같은 스크립트를 추가해보자.
**** 시작 - 이 행은 스크립트에 포함시키지 않는다. ****
#c:: ; win+c 를 누르면
MsgBox, 4, Calc, Sure? ; "Calc"라는 제목, "Sure?"라는 내용의 메시지 박스를 띄우고
IfMsgbox, Yes ; "예"를 클릭하면
{
Run, calc.exe, c:\경로는 각자 설정 ; 계산기를 실행시킨 뒤
return ; 명령어를 종료하라
}
IfMsgbox, No ; "아니오"를 클릭하면
{
Msgbox, 0, Confirm ,No!, 1 ; "Confirm"이라는 제목, "No!"라는 내용의 메시지 박스를 1초 간만 띄워라
}
return
**** 끝 - 이 행은 스크립트에 포함시키지 않는다. ****
이 스크립트를 넣고 win + c 를 누르면
이런 메시지 창이 뜬다. 디폴트 값으로 "예(Y)"가 활성화되어 있다. 엔터나 스페이스바를 누르면 계산기가 실행된다.
만약 "아니요(N)"를 누르면
위와 같은 메시지 박스가 실행되었다가 1초 뒤 사라진다.
2. 오토핫키 메시지 박스 활용법
(1) 스크립트를 잠깐 멈추는 용도나 분기점으로 사용하기
MsgBox, 4, Calc, Sure?
위의 메시지박스의 경우, 단순하게는 스크립트 진행을 잠깐 멈추는 지점으로 사용할 수 있다. "예"를 눌러야만 다음으로 넘어가게 할 수 있기 때문이다. 또한 "예"를 누르느냐 "아니요"를 누르느냐에 따라서 실행하는 명령을 다르게 짤 수 있다. 즉 분기점으로 사용할 수 있다.
이 형태의 메시지 박스 스크립트에는 아래의 부분이 반드시 뒤따라야 한다.
IfMsgbox, Yes
{
"예"를 눌렀을 때 수행할 명령들
}
IfMsgbox, No
{
"아니요"를 눌렀을 때 수행할 명령들
}
(2) 명령이 제대로 이루어졌는지 확인하는 용도로 사용하기
Msgbox, 0, Confirm ,No!, 1
위의 메시지박스는 그냥 사라지는 메시지 박스이므로, "어떤 명령이 제대로 실행되었구나"라고 눈으로 확인을 할 때 쓸 수 있다.
예를 들어 특정 스크립트를 실행시키는 핫키와 이 메시지 박스 명령어를 붙여 두면 스크립트가 실행됐을 때 메시지 박스가 켜졌다가 사라지므로, 스크립트가 제대로 실행됐음을 알 수 있다.
반대로 종료하는 핫키에 이 메시지 박스를 넣어두면 트레이 아이콘에서 사라졌는지 확인하지 않아도 제대로 종료됐음을 눈으로 확인할 수 있다.
**** 시작 - 이 행은 스크립트에 포함시키지 않는다. ****
^#!x:: ; ctrl+win+alt+x 를 누르면
msgbox, 0, Terminate, Quit!, 1 ; "Terminate"이라는 제목, "Quit!"이라는 내용의 메시지 박스를 1초 간만 띄워라.
exitApp ; 이 스크립트를 종료
**** 끝 - 이 행은 스크립트에 포함시키지 않는다. ****
위의 세 줄을 스크립트에 넣어둔 뒤 ctrl+win+alt+x 를 누르면
위의 메시지 박스가 뜨고, 1초 뒤 메시지 박스가 닫히면 해당 스크립트도 종료된다.
'IT 관련 팁 > 오토핫키 Autohotkey' 카테고리의 다른 글
오토핫키 - 볼륨 조절 쉽게 하기 (2) | 2022.03.15 |
---|---|
오토핫키 - PC 카카오톡 빠르게 답장하기 (3) | 2022.03.14 |
오토핫키 - Alt+F4 다른 키로 키맵핑하여 프로그램 종료 쉽게 하기 (2) | 2022.03.11 |
오토핫키 - 다른 스크립트를 실행할 메인 스크립트 만들기 (2) | 2022.03.10 |
오토핫키 - GUI로 원격제어 시 사용할 수 있는 버튼 만들기 (3) | 2022.03.08 |