본문 바로가기

Autohotkey강좌

Autohotkey #53. 일정 시간마다 마우스를 클릭하기

반응형

https://youtu.be/1raHP3glCEU

어떤 정신나간 회사에서 직원들을 못 믿고, 마우스를 움직이지 않으면 업무하지 않는 것으로 간주한다는 내용을 보고 어처구니가 없어서 만들었습니다. 

 

실행 화면

단순하게 Click간격(초)을 입력하고 시작을 누르거나, F12를 누르면 정해진 시간 간격에 한번씩 마우스 현재 위치를 좌클릭하도록 합니다. 

해당 프로그램을 종료하려면 ESC를 누르거나 Ctrl+F12를 눌러주면 됩니다.

복잡하지 않게 하려고 간단하게 만들었으니, 혹시 필요한 분들은 사용하시기 바랍니다.

간단히 설명하자면 아래는 GUI구성부분입니다.

 

Gui, Add, Text, x60 y25 w80 h20, Click간격(초)
Gui, Add, Edit, x160 y25 w50 h20 vSec, 5
Gui, Add, Button, x230 y25 w50 h20, 시작

Gui, Add, Text, x60 y50 w130 h20, Start:F12, End : ESC
Gui, Add, Button, x230 y50 w50 h20, End ;
Gui, Show, ,Mouse Click v0.1
return

 

시작버튼을 눌렀을때 진행되는 부분은 아래와 같습니다.

 

F12::
Button시작:
{
   Gui, Submit, hide                   ;=> 사용자가 입력한 내용을 읽어 들이고 GUI를 숨깁니다. Sec값이 업데이트 됩니다.
   CoordMode, Mouse, Screen  ; => Mouse를 사용할거고, Screen 좌표를 사용하도록 좌표계를 설정
   Sec *=1000                             ; => 사용자가 입력한 값에 1000을 곱해서 내부적으로 사용하는 값으로 변경

   Loop {  ; 무한 루프의 시작
      MouseGetPos, mx, my      ; => 현재 마우스 위치 값을 읽어서 mx, my에 저장
      MouseClick, Left, mx, my  ;=> mx, my위치에 마우스 좌측 버튼을 클릭
      Sleep, Sec                         ; => 정해진 시간 * 1000만큼 기다리기
   }
}
return

 

아래는 End버튼 누를때, Ctrl+F12를 누를때, ESC키를 누를때 해당 프로그램을 종료하도록 합니다.

 

^F12::
ESC::
ButtonEnd:
{
    ExitApp
}
return

 

시간이 없으신 분들은 실행파일만 다운로드 받으시고

MouseClick.exe
0.62MB

 

시간이 되는 분들은 한번 코드를 참고하세요.

MouseClick.ahk
0.00MB

 

이 프로그램 사용할때, 마우스가 눌리면 안 되는 부분에 마우스를 놓지 않도록 해야 만약의 불상사를 예방할 수 있습니다. 혹시나 문제 생기면 바로 ESC눌러서 빠져 나오시길.

반응형