[AutoHotKey] 오토핫키 기초: 비활성 명령어 (feat. 활성화 되지 않은 창에 명령) - (1) a.k.a controlsend to an inactive window
Window Spy를 실행시켜서 ClassNN과 WindowTitle을 알아냅니다.
WindowTitle은 말 그대로 창 제목 이며 아래 이미지의 경우 '카카오뱅크' 가 되겠네요.
그리고 ClassNN은 컨트롤(control) 이름입니다.
아래 이미지의 경우 채팅방 내의 검색창을 클릭하니 'Edit1' 이라고 뜹니다.
가운데 저 영역의 ClassNN은 EVA_VH_ListControl_Dblclk1 이군요
이렇게 ClassNN을 알아야 비활성 윈도우에 명령을 내릴 수 있습니다.
예를 들어 카카오뱅크 윈도우에 포커스를 얻지 않더라도
그 윈도우에 있는 컨트롤 'Edit1' 에다가 특정 단어를 검색할 수 있는거죠.
ControlSend 명령어는 비활성 윈도우에 키입력을 보냅니다. 일반 Send의 비활성 모드라고 생각하시면 됩니다.
파라미터 중에 보통 Control, Keys, WinTitle 이렇게 세 가지 매개변수를 주로 사용하는데요,
Control : 해당 컨트롤의 ClassNN
Keys : 보낼 키, Send와 동일하게 사용
WinTitle : 해당 윈도우 이름
PC 카카오톡으로 테스트를 해보겠습니다.
enter 키 같은 경우에는
ControlSend , richedit50w1, {enter}, 윈도우이름
이렇게 해도 되고
ControlSend , , {enter}, 윈도우이름
이렇게 해도 됩니다.
잘 되는군요
비활성 키 입력을 해봤으니, 비활성 클릭도 함 해봅시다.
여기에도 마찬가지로
파라미터 중에 Control-or-Pos, WinTitle과 Options 이 세 가지를 주로 사용하는데요
Control-or-Pos : 클릭할 해당 컨트롤의 ClassNN 또는 클릭할 대상 창 내에서으 좌표
WinTitle : 해당 윈도우 이름
Options : 대부분 NA 옵션을 이용
( NA 옵션은 비활성 클릭을 하더라도 클릭된 창은 활성화 되는데, 이를 막아줌 )
이것도 테스트 해보니 잘 되는군요