오토핫키 2020. 10. 12. 19:36

전 포스팅에서는 마우스클릭만 다루었는데 이번에는 마우스클릭 및 드래그 같이 다루어보겠습니다.

명령어 중간중간 sleep 500 이런식으로 되어있는데 일종의 기다리는 시간이라고 보시면 됩니다.

기다리는 대기시간 Sleep 을 넣지 않을 경우 너무 빨라서 프로그램 에서는 작동이 제대로 안됩니다.

예) 버튼 누를 시 화면이 뜨기전에 미리 해당좌표 클릭 등등

Sleep 500 → 500ms초 기다려라,(0.5초)

 

설명은 전 포스팅에서 어느정도 하였기에 동영상과 간단 설명으로 하겠습니다.

동영상은 엑셀에서 도형을 간단히 그리는 동작입니다.(마우스 클릭 및 드래그)

이런식으로 사용자가 원하는데로 손쉽게 매크로 제작할 수 있습니다.

CoordMode, mouse, screen ;디스플레이 해상도 기준 절대좌표 지정 명령어
F1:: ;키보드 F1 누를 시 매크로 실행
MouseClick, Left, 360, 150 ;;;;;360, 150 좌표 마우스 좌클릭
sleep 500 ;;;;;500ms만큼 기다린다.(0.5초 기다린다.)
MouseClick, left, 436, 172
sleep 1000 ;;;;;1000ms만큼 기다린다.(1초 기다린다.)
MouseClick, left, 525, 219
sleep 1000 ;;;;;1000ms만큼 기다린다.(1초 기다린다.)
MouseClickDrag, left, 346, 329, 558, 458 ;;;;;346, 329 좌표에서 좌클릭 드래그하여 558, 458 좌표에서 놓는다.
return

ESC::
exitapp

 

아래의 동영상은 제가 작업하는 기초적인 예시입니다.

실제 클릭될 곳들을 한번씩 마우스 이동하고 좌표를 메모장 같은곳에 기입하고

후에 명령어 추가하여 입력하는 방식으로 합니다.

MouseClickDrag 관련 설명


지정된 마우스 버튼을 클릭하고 누릅니다. 마우스를 목표 좌표로 이동시킨 다음, 버튼을 놓습니다.MouseClickDrag, WhichButton, X1, Y1, X2, Y2 [, Speed, R]

 

매개변수:

1)WhichButton

클릭할 버튼: Left, Right, Middle (또는 각각 앞 글자 하나). X1은 네 번째 버튼, X2는 다섯 번째 버튼입니다. 예를 들어: MouseClickDrag, X1, ....

사용자가 제어판을 통하여 마우스 좌우 버튼을 바꾼 경우 자동으로 보상하려면, 대신에 Click 명령어를 사용하십시오.

2)X1, Y1

끌기를 시작할 위치의 x/y 좌표, 표현식 가능 (마우스는 끌기가 시작되기 바로 전 이 좌표로 이동합니다). 좌표는 활성 창에 상대적입니다. 단, CoordMode를 사용하여 좌표 체계를 바꾼 경우는 예외입니다. 생략하면, 마우스의 현재 위치가 사용됩니다.

3)X2, Y2

마우스를 끌어다 놓을 x/y 좌표 (즉, 버튼이 눌려 있는 동안), 표현식. 좌표는 활성 창에 상대적입니다. 단, CoordMode를 사용하여 좌표를 바꾼 경우는 예외입니다.

4)Speed

마우스를 이동할 속도. 범위는 0 (가장 빠름)부터 100 (가장 느림)까지입니다. 표현식 가능. 주의: 속도가 0이면 마우스를 순간 이동시킵니다. 생략하면, 기본 속도 (SetDefaultMouseSpeed가 설정하거나 그렇지 않으면 2)가 사용됩니다.

Speed는 SendInput/Play 모드에서 무시됩니다; 이 모드에서 마우스는 순간 이동합니다 (물론 SetMouseDelay에는 SendPlay에 적용할 모드가 있습니다). 시각적으로 마우스를 더 느리게 이동시키려면 -- 예를 들어 청중을 위한 데모를 수행하는 스크립트라면 -- (선택적으로 BlockInput과 함께) SendEvent {Click 100, 200} 또는 SendMode Event를 사용하십시오.

5)R

이 매개변수가 기호 R이면, X1과 Y1 좌표는 현재 마우스 위치로부터의 상태거리(offsets)로 취급됩니다. 다른 말로, 커서는 현재 위치로부터 X1 픽셀 만큼 오른쪽으로 (음수이면 왼쪽으로) 그리고 Y1 픽셀 만큼 아래로 (음수이면 위로) 이동합니다.

비슷하게, X2와 Y2 좌표는 X1과 Y1 좌표로부터의 상대거리로 취급됩니다. 예를 들어, 다음은 먼저 그의 시작 위치로부터 커서를 아래로 오른쪽으로 5 픽셀 만큼 이동시킵니다. 그 다음에 그 위치로부터 마우스를 아래로 그리고 오른쪽으로 10 픽셀 만큼 끌어 놓습니다: MouseClickDrag, Left, 5, 5, 10, 10, , R

'오토핫키' 카테고리의 다른 글

오토핫키 설명 HELP 한글버전  (0) 2020.10.17
오토핫키 키보드 입력(Send)  (2) 2020.10.17
오토핫키 마우스클릭(MouseClick)  (0) 2020.10.12
오토핫키 추가 편집기 및 한글패치  (0) 2020.10.12
오토핫키 설치  (0) 2020.10.12
posted by 취미찾는중
: