ControlSend가 비활성 상태에서의 Send라면, ControlClcik은 비활성 상태에서의 MouseClick입니다.

ControlSend와 마찬가지로 ClassNN과 WinTitle을 이용합니다.

 


 매개변수 

ControlClick의 매개변수는 아래와 같습니다.

ControlClick [, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText]

이 중, 우리가 실질적으로 쓰는 매개변수만 보아서 정리하면 아래와 같습니다.

ControlClick [, Control-or-Pos, WinTitle, , , , Options]

콤마 사이사이에 매개변수들이 생략되었고, 그래서 콤마가 연속적으로 보이는 형태가 나타났습니다. 생략된 매개변수는 이름만 봐서 느낌이 오는 것(WhichButton, ClickCount 등)도 있고 영 감이 안잡히는 것도 있습니다.

 

생략한 매개변수를 사용하고 싶으시다면 다른 문서를 찾아보시길 권장합니다. 여기선 기초적인 사용법만 다룹니다.

 

  • Control-or-Pos 매개변수: 클릭을 보낼 컨트롤의 ClassNN을 쓰거나, 클릭할 좌표를 상대좌표로 적어줍니다.
  • WinTitle 매개변수: 클릭을 보낼 창의 WinTitle을 적어줍니다.
  • Options 매개변수: NA를 써줍니다.

 

1. Control-or-Pos

 

클릭을 보낼 컨트롤의 ClassNN은 Window Spy에서 찾아서 써주시면 되고, 혹시 ClassNN이 안잡히는 경우나 더욱 세부적인 클릭을 구현하고 싶으시면 좌표로 입력을시킬 수 있습니다.

 

MouseClick과는 다르게, 마우스 커서가 직접 움직이지 않고도 클릭이 가능합니다.

 

좌표로 입력하는 경우에는 X(좌표) Y(좌표)의 형식으로 써주시면 됩니다. 아래처럼요.

X300 Y150

 

2. WinTitle

 

지난 비활성 강좌에서 계속해서 찾았던 WinTitle입니다. 프로그램의 타이틀명이며, Window Spy에서 볼 수 있습니다.

 

3. Options

 

여러 옵션이 있지만, NA옵션만 소개하겠습니다.

비활성 클릭을 한다 해도 클릭을 넣는 창은 활성화됩니다. 이를 막아주는 옵션이 바로 NA입니다. 또한 넣어준다면 사용자의 물리적 마우스 클릭과 별도로 분리되기 때문에 혹시나 마우스 클릭이 의도한대로 되지 않는다 싶으시면 넣어보시면 됩니다.

 

일부 창에서는 효과가 없을 수 있습니다.

 


 예시 

39강 프로그램.exe
0.87MB

 

비활성 클릭 테스트용 프로그램을 만들었습니다. 다운로드 해주세요.

가운데에 있는 버튼을 비활성 클릭으로 눌러보겠습니다.

 

먼저, Window Spy를 통해 WinTitle과 ClassNN을 얻어옵니다.

WinTitle은 [39강]이며, 버튼의 ClassNN은 Button1이네요.

 

그렇다면 아래와 같이 써줍니다.

ControlClick, Button1, 39강

 

실행시켜봅니다.

버튼을 눌렀을 때 나오는 대화 상자가 출력됩니다.

 


컨트롤 클릭은 사실 그렇게 안정적인 기술은 아닙니다. 오토핫키에서 비활성 명령어들이 다 그렇지요 뭐.

다만 분명 편리한 명령어이고, Send와 Click을 ControlSend와 ControlClick으로 바꾸는 것만으로도 충분히 더 업그레이드 된 프로그램을 만들 수 있습니다.

 

다음 강좌는 ControlSetText입니다. ControlClick보다는 덜 어려울거예요.

 


| 39. 비활성 클릭 ControlClick |