MouseClick

マウスのボタンをクリックまたは長押しするか、マウスのホイールを回転させます。Note: The Click function is generally more flexible and easier to use.

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

パラメータ

WhichButton

型:文字列

If blank or omitted, it defaults to Left (the left mouse button). Otherwise, specify the button to click or the rotate/push direction of the mouse wheel.

Button: Left, Right, Middle (or just the first letter of each of these); or X1 (fourth button) or X2 (fifth button). 事例:MouseClick "X1"

左はプライマリーボタン、右はセカンダリーボタンに対応します。ユーザーがシステム設定でボタンを入れ替えると、ボタンの物理的な位置は入れ替わりますが、効果は変わりません。

Mouse wheel: Specify WheelUp or WU to turn the wheel upward (away from you); specify WheelDown or WD to turn the wheel downward (toward you). ホイールを左に押す場合はWheelLeft(またはWL)、右に押す場合はWheelRight(またはWR)をそれぞれ指定します。ClickCountは、ホイールを回すノッチの数です。

X, Y

Type: Integer

省略された場合は、カーソルの現在位置が使用されます。Otherwise, specify the X and Y coordinates to which the mouse cursor is moved prior to clicking. 座標は、CoordMode関数を使用して変更した場合を除いて、アクティブウィンドウのクライアント領域を基準にしています。

ClickCount

Type: Integer

省略したときは、初期値は 1 です。Otherwise, specify the number of times to click the mouse button or turn the mouse wheel.

Speed

Type: Integer

省略されたときは、SetDefaultMouseSpeedで設定された速度(設定されていないときは2)が初期値として使用されます。そうでないときは、マウスを動かす速度を0(最速) から100(最低)の範囲で指定します。speedを0にすると、マウスが移動します。

Speedの設定は、SendInput関数とSendPlay関数では無視され、マウスは瞬時に移動します。(ただし、SetMouseDelay関数には、SendPlayに適用されるモードがあります。)マウスをよりゆっくり動かしたい場合、たとえば視聴者にデモを行うスクリプトなどでは、SendEvent "{Click 100 200}"SendMode "Event"を使用し、オプションでBlockInputを併用してください。

DownOrUp

型:文字列

If blank or omitted, each click consists of a down-event followed by an up-event. そうでなければ、次の文字のうち、ひとつを指定してください:

D:マウスボタンを押しながら離さない(ダウンイベントを発生させます)。

U:マウスボタンを離す(つまりアップイベントを発生させます)。

Relative

型:文字列

空白または省略されたときは、X、Y座標は絶対座標になります。そうでなければ、次の文字を指定します:

R:X、Y座標は、現在のマウス位置からのオフセットとして扱われます。つまり、カーソルは現在位置から右にXピクセル(負の場合は左)、下にYピクセル(負の場合は上)だけ移動します。

備考

SendModeで設定された送信方式を使用します。

The Click function is recommended over MouseClick because it is generally easier to use. ただし、MouseClickはSpeedパラメータをサポートしていますが、Clickによる移動速度の調整はSetDefaultMouseSpeedを使用する必要があります。

シフトクリックやコントロールクリックを行うには、以下の例のように操作の前後に送信機能を使用します:

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

SendPlayモードは、他のモードに比べ、より幅広いゲームにおいてマウスイベントを正常に発生させることができます。また、アプリケーションやゲームによっては、マウスの動きが速いと追従性が悪くなることがあります。SpeedパラメータやSetDefaultMouseSpeed関数で、マウススピードを落とすことができます(SendEvent mode のみ)。

アプリケーションによっては、マウスホイールのClickCountが1以上でないと従わないものがあります。それらには、以下のようなLoopを使用します:

Loop 5
    MouseClick "WheelUp"

BlockInput関数を使用すると、ユーザーによる物理的なマウス操作が、マウス関数によって生成されるシミュレーションマウスイベントを妨害することを防ぐことができます。However, this is generally not needed for the modes SendInput and SendPlay because they automatically postpone the user's physical mouse activity until afterward.

マウスのクリックダウンとクリックアップのたびに、自動的に遅延が発生します(SendInputモードとマウスホイールを回す場合を除く)。ディレイの長さを変更する場合は、SetMouseDelayを使用します。

CoordModeSendModeSetDefaultMouseSpeedSetMouseDelayClickMouseClickDragMouseGetPosMouseMoveControlClickBlockInput

現在のマウス位置でダブルクリックする。

MouseClick "left"
MouseClick "left"

Same as above.

MouseClick "left",,, 2

マウスカーソルを特定の位置に移動させ、右クリックを1回します。

MouseClick "right", 200, 300

マウスホイールの回転をシミュレートします。

#up::MouseClick "WheelUp",,, 2  ; Turn it by two notches.
#down::MouseClick "WheelDown",,, 2