MouseClick

마우스 버튼을 클릭하거나 누릅니다. 또는 마우스 휠을 돌립니다. 주의: Click 명령어가 일반적으로 더 유연하고 사용하기가 더 쉽습니다.

MouseClick , WhichButton, X, Y, ClickCount, Speed, DownOrUp, Relative

매개변수

WhichButton

클릭할 버튼: Left (기본값), Right, Middle (또는 각각 그냥 앞 머리 글자 하나); 또는 네 번째 다섯 번째 마우스 버튼 (X1 또는 X2). 예를 들어: MouseClick, X1. 이 매개변수는 생략할 수 있습니다. 생략할 경우 기본값은 Left(왼쪽)입니다.

마우스 휠을 돌림: WheelUp 또는 WU를 지정해 휠을 위로 돌립니다 (멀어지게); WheelDown 또는 WD를 지정해 휠을 아래로 돌립니다 (가까워지게). [v1.0.48+]: WheelLeft (WL) 또는 WheelRight (WR)을 지정하면 휠을 왼쪽 또는 오른쪽으로 각각 돌릴 수 있습니다 (그러나 이것은 Windows Vista 미만의 운영 체제에서는 아무 효과가 없습니다). ClickCount는 휠을 돌릴 눈금의 개수입니다.

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

X, Y

클릭하기 전에 마우스 커서가 이동해 갈 x/y 좌표, 표현식 가능. 좌표는 활성 창에 상대적입니다. 좌표는 활성 창에 상대적입니다. 단, CoordMode가 사용되어 좌표가 변경된 경우는 제외합니다. 생략하면, 커서의 현재 위치가 사용됩니다.

ClickCount

마우스를 클릭할 횟수, 표현식 가능. 생략하면, 버튼은 한 번 클릭됩니다.

Speed

범위는 0 (가장 빠름)부터 100 (가장 느림)까지입니다. 표현식 가능.

주의: 속도가 0이면 마우스를 순간 이동시킵니다.

생략하면, 기본 속도 (SetDefaultMouseSpeed가 설정하거나 그렇지 않으면 2)가 사용됩니다.

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

DownOrUp

If omitted, each click will consist of a "down" event followed by an "up" event. To change this behavior, specify the one of the following letters:

D: 마우스 버튼을 누르지만 떼지는 않습니다(즉, 누름 이벤트를 발생시킵니다).

U: 마우스 버튼을 놓습니다 (즉, 뗌 이벤트를 발생시킵니다).

Relative

If omitted, the X and Y coordinates will be treated as absolute values. To change this behavior, specify the following letter:

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

논평

이 명령어는 SendMode에 의하여 설정된 전송 방법을 사용합니다.

MouseClick보다 Click 명령어를 권장합니다. 왜냐하면:

  1. 제어판을 통하여 마우스 좌우 버튼이 바꾸어도 자동으로 보상합니다.
  2. 일반적으로 더 사용하기 쉽습니다.

shift-click 또는 control-click을 수행하려면, 다음 예제와 같이 연산의 앞 뒤에 Send 명령어를 사용하십시오:

; 예제 #1: 
Send, {Control down}
MouseClick, left, 55, 233
Send, {Control up}
; 예제 #2:
Send, {Shift down}
MouseClick, left, 55, 233
Send, {Shift up}

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

어떤 어플리케이션은 마우스 휠에 대하여 1보다 큰 ClickCount를 준수하지 않습니다. 그런 경우는 다음 예제와 같이 Loop(회돌이)를 사용하십시오:

Loop, 5
    MouseClick, WheelUp

BlockInput 명령어를 사용하면 사용자의 물리적인 마우스 활동 때문에 마우스 명령어로 생산되는 흉내낸 마우스 이벤트들이 어질러지는 것을 막을 수 있습니다. 그렇지만, 일반적으로 SendInput/Play 모드에는 불필요합니다. 왜냐하면 자동으로 사용자의 물리적 마우스 움직임을 뒤로 연기시켜 주기 때문입니다.

마우스를 클릭해서 누르고 뗄 때마다 뒤에 자동으로 지연시간이 있습니다 (SendInput 모드와 마우스 휠 돌리기는 제외합니다). SetMouseDelay를 사용하면 지연시간을 변경할 수 있습니다.

CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClickDrag, MouseGetPos, MouseMove, ControlClick, BlockInput

예제

현재 마우스 위치에 더블클릭 합니다.

MouseClick, left
MouseClick, left

위와 동일.

MouseClick, left,,, 2

Moves the mouse cursor to a specific position, then right-clicks once.

MouseClick, right, 200, 300

Simulates the turning of the mouse wheel.

#up::MouseClick, WheelUp,,, 2  ; 두 눈금 만큼 돌립니다.
#down::MouseClick, WheelDown,,, 2