본문 바로가기
컴퓨터/오토핫키

오토핫키(Autohotkey)로 원하는 위치 자동 마우스 클릭 매크로

by 와이까치 2022. 2. 17.
반응형

안녕하세요, 까칩니다. 

지난 번에는 마우스를 이동하는 매크로에 대해서 알아보았습니다. 

2022.02.11 - [컴퓨터/오토핫키] - 오토핫키(Autohotkey)로 원하는 위치 자동 마우스 이동 매크로

 

오토핫키(Autohotkey)로 원하는 위치 자동 마우스 이동 매크로

안녕하세요, 까칩니다. 오늘은 우선 오토핫키를 이용하여 원하는 위치를 자동으로 이동하게 하는 마우스 클릭 매크로를 만들어보겠습니다. 우선 새로운 오토핫키를 하나 만들어주겠습니다. 1.

like9sin.tistory.com

 

이번에는 마우스를 이동했으면 클릭까지 하는 매크로를 만들어 보도록 하겠습니다. 

 

 

 

1. 마우스 클릭

마우스를 클릭하는 명령어는 단순합니다. 

 

MouseClick, [WhichButton, X, Y, ClickCount, Speed, D|U, R]

 

WhichButton 매개변수는 Left, Right, Middle이 있습니다. 각각 왼쪽, 오른쪽, 휠 버튼입니다. 

X, Y는 각각 마우스로 클릭할 좌표를 의미합니다. 즉, 굳이 마우스를 이동하지 않아도 여기에 변수를 입력한다면 클릭하고 이동까지 가능합니다. 

ClickCount는 몇번 클릭할지를 표시합니다.

Speed는 마우스가 이동하는 속도입니다. 커질수록 느려집니다. 역시 2가 기본값입니다.

D와 U는 down/up 입니다. down은 계속 누르고 있는다는 뜻이며, up은 눌렀다 뗀다는 것입니다. U가 기본값입니다.
R은 좌표를 절대좌표로 할지, 상대좌표로 할지는 정하며, 절대좌표가 기본값입니다. 

 

 

예를 들어

현재위치를 더블클릭하고싶다면

 

MouseClick, left, , , 2

 

이렇게 만들어 주면 더블클릭을 하게됩니다. 

 

2. 마우스 현재좌표 알기. 

이전 게시글을 통해 마우스의 좌표를 Window spy로 알 수 있다는 것을 알았습니다.

2022.02.11 - [컴퓨터/오토핫키] - 오토핫키(Autohotkey)로 원하는 위치 자동 마우스 이동 매크로

 

이번엔 오토핫키 내부 명령어를 통해 현재 마우스 좌표를 얻어올 수 있도록 하겠습니다.

좌표를 얻어오는 명령어는 

 

MouseGetPos [, OutputVarX, OutputVarY]

 

명령어 입니다. 

해당하는 매개변수 두개는 각각 X값과 Y값을 대입해주는 명령어입니다. 

 

예를 들어보겠습니다.

 

F10::
{
CoordMode, mouse, Screen
MouseGetPos, mx, my
MsgBox, %mx% %my%
}

 

이렇게 코드를 짜서 F10을 누르면 현재 좌표를 가져오는 프로그래밍을 만들었습니다. 

그리고 마우스를 움직이며 F10을 누르면 

이렇게 제대로 좌표를 가져오는걸 볼 수 있습니다. 

 

그럼 한번 마우스위치를 저장하고 해당 위치를 클릭하게 만들어 보겠습니다. 

 

 

 

 

3. 위치 저장 & 클릭

간단하게 F6을 누르면 위치 저장, F7을 누르면 클릭을 하겠습니다.

 

CoordMode, mouse, Screen
F6::
{
MouseGetPos, mx, my
return
}
F7::
{
MouseClick, left, mx, my
return
}

 

이렇게 코딩을 하면 우리가 저장한 위치를 클릭할 수 있습니다. 

 

 

 

4. 마우스 드래그

다음은 마우스를 드래그 하는 명령어를 알아보겠습니다. 

단순히 이동을 하는게 아니라, 누른 상태에서 쭉 끌어가는 명령어 입니다. 

 

 

MouseClickDrag, WhichButton, X1, Y1, X2, Y2 [, Speed, Relative]

 

WhichButton은 아까 설명한 것과 같은 매개변수 입니다. 클릭할 버튼을 입력합니다. 

여기서는 좌표 두군데를 지정합니다. 

시작좌표과 드래그가 끝나는 좌표를 입력해줍니다. 

Speed와 Relative 역시 같은 매개변수입니다. 

 

MouseClickDrag, left, 0, 200, 600, 400

 

해당명령어를 실행하면 쭉 드래그가 되는 것을 확인할 수 있습니다.

 

 

 

 

오늘은 마우스 클릭과 해당좌표 확인, 그리고 마우스 드래그에 대해서 알아보았습니다. 

더 많은 명령어를 공부해서 올릴 수 있도록 하겠습니다. 

 

반응형

댓글