MouseMove

マウスカーソルを移動させます。

MouseMove X, Y , Speed, Relative

パラメータ

X, Y

型:整数

The X and Y coordinates to move the mouse to. Coordinates are relative to the active window's client area unless CoordMode was used to change that.

Speed

型:整数

省略された場合、デフォルトの速度(SetDefaultMouseSpeedで設定されたもの、またはそれ以外の2)が使用されることになります。Otherwise, specify the speed to move the mouse in the range 0 (fastest) to 100 (slowest). スピードを0にすると、マウスが瞬時に動きます。

SendInput/PlayモードではSpeedは無視され、マウスは瞬時に移動します(ただし、SetMouseDelayにはSendPlayに適用されるモードがあります)。To visually move the mouse more slowly -- such as a script that performs a demonstration for an audience -- use SendEvent "{Click 100 200}" or SendMode "Event" (optionally in conjuction with BlockInput).

Relative

型:文字列

If blank or omitted, the X and Y coordinates will be used for absolute positioning. Otherwise, specify the following letter:

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

備考

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

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

BlockInput関数を使用すると、ユーザーによる物理的なマウス操作が、マウス関数によって生成されるシミュレーションマウスイベントを妨害することを防ぐことができます。ただし、SendInput/Playモードでは、ユーザーの物理的なマウス操作を自動的に後回しにするため、一般にこの操作は必要ありません。

マウスを動かすたびに自動で遅延が発生します(SendInputモードは除く)。ディレイの長さを変更する場合は、SetMouseDelayを使用します。

以下は、特定のマルチモニター構成でより良く機能する可能性のある、マウスカーソルを移動する別の方法です:

DllCall("SetCursorPos", "int", 100, "int", 400)  ; 最初の数字はX座標、2番目の数字はY(画面からの相対座標)です。

なお、マウスカーソルは、hide-cursorの例で一時的に非表示にすることができます。

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

マウスカーソルを新しい位置に移動します。

MouseMove 200, 100

マウスカーソルを現在位置から右に20ピクセル、下に30ピクセルだけゆっくり移動させます(速度50対2)。

MouseMove 20, 30, 50, "R"