IT 관련 팁/오토핫키 Autohotkey

오토핫키 - 메시지 박스 활용하기(확인해야 사라지는 박스, 그냥 사라지는 박스)

RayShines 2022. 3. 12. 11:55
반응형

오토핫키에는 메시지 박스를 띄우는 기능이 있다. 메시지 박스를 적절하게 활용하면 스크립트가 제대로 활성화되었는지, 제대로 종료되었는지를 확인할 수 있다. 또한 메시지 박스를 이용해 스크립트를 원하는 시점에 중단하고, 다시 재개되도록 할 수도 있다. 그리고 메시지 박스에 포함된 "예", "아니오" 중 어떤 버튼을 누르느냐에 따라 다른 명령을 실행하게 할 수도 있다.

 

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 를 누르면

오토핫키 메시지박스 msgbox

위의 메시지 박스가 뜨고, 1초 뒤 메시지 박스가 닫히면 해당 스크립트도 종료된다.

 

 

반응형