MouseMove

마우스 커서를 이동시킵니다.

MouseMove, X, Y [, Speed, R]
선택

매개변수

X, Y

마우스를 이동할 x/y 좌표, 표현식 가능. 조표는 활성 창에 상대적입니다. 단, CoordMode를 사용하여 좌표 체계를 바꾸었다면 예외입니다.

Speed

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

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

R

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

논평

이 명령어는 SendMode가 설정한 전송 방법을 사용합니다.

SendPlay 모드는 다른 모드보다 더 광범위한 게임에서 성공적으로 마우스 이벤트를 발생시킬 수 있습니다. 게다가, 어떤 어플리케이션과 게임은 마우스가 너무 빠르게 움직인다면 추적하는 데 어려움이 있을 수 있습니다. speed 매개변수나 SetDefaultMouseSpeed를 사용하면 그 속도를 줄일 수 있습니다 (기본 SendEvent 모드 전용).

BlockInput 명령어을 사용하면 사용자의 물리적인 마우스 활동 때문에 마우스 명령어로 생산한 흉내낸 마우스 이벤트가 어지럽게 되는 것을 막을 수 있습니다. 그렇지만, 이것은 보통 SendInput/Play 모드에는 불필요합니다. 왜냐하면 자동으로 사용자의 물리적 마우스 활동을 나중으로 연기하기 때문입니다.

마우스의 매 움직임마다 자동으로 지연 시간이 삽입됩니다 (SendInput 모드는 예외). SetMouseDelay를 사용하면 지연 시간의 길이를 변경할 수 있습니다.

다음은 마우스 커서를 이동하는 다른 방법입니다. 어떤 다중-모니터 구성에서는 더 잘 작동할 수도 있습니다:

DllCall("SetCursorPos", int, 100, int, 400)  ; 첫 번째 숫자는 X-좌표이고 두 번째 좌표는 Y입니다 (화면에 상대적입니다).
선택 | 내려받기

관련하여 말씀드리면, 마우스 커서는 커서-숨기기 예제와 같이 임시로 숨을 수 있습니다.

관련 항목

CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClick, MouseClickDrag, MouseGetPos, BlockInput

예제

; 마우스를 새 위치로 이동합니다:
MouseMove, 200, 100

; 마우스를 천천히 (속도 50 vs. 2) 현재 위치로부터
; 20 픽셀만큼 오른쪽으로 그리고 30 픽셀 만큼 아래쪽으로 이동시킵니다:
MouseMove, 20, 30, 50, R
선택 | 내려받기