マウスの移動、マウスのクリックを指定します Windows全体を対象としています アプリケーションでマウスイベントを疑似的に発生させたいとにき使います。 |
Private Declare Sub mouse_event Lib "user32" Alias "mouse_event"
(ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons
As Long, ByVal dwExtraInfo As Long) 'ここから下は使う分だけ指定して下さい Private Const MOUSEEVENTF_ABSOLUTE = &H8000 Private Const MOUSEEVENTF_MOVE = &H1 Private Const MOUSEEVENTF_LEFTDOWN = &H2 Private Const MOUSEEVENTF_LEFTUP = &H4 Private Const MOUSEEVENTF_RIGHTDOWN = &H8 Private Const MOUSEEVENTF_RIGHTUP = &H10 Private Const MOUSEEVENTF_MIDDLEDOWN = &H20 Private Const MOUSEEVENTF_MIDDLEUP = &H40 |
■使い方 mouse_event dwFlags,dx,dy,dwData,dwExtraInfo ■パラメータ dwFlags マウスの移動とマウスボタンの動作を指定します。 次のフラグから、意味のある組み合わせを指定します。(組み合わせは + で)
dx dy dwFlagsパラメータに MOUSEEVENTF_ABSOLUTE フラグをセットした場合は、マウスの座標を絶対的な座標で指定します。そうでない場合は、マウスの座標を現在位置からの相対的な座標で指定します。 dwData dwFlagsパラメータに MOUSEEVENTF_WHEEL フラグをセットした場合は、ホイールの移動量を指定します。正の値はホイールが前方 (ユーザーから離れた方向) に、負の値はホイールが後方 (ユーザーの方向) に回されていることを示します。1 回のホイールクリックは、WHEEL_DELTA として定義されています。WHEEL_DELTA の値は 120 です。 dwExtraInfo マウスイベントに関連付けられた 32 ビットの追加情報を指定します。 *理解不能* ■追加情報 MOUSEEVENTF_ABSOLUTE を指定した場合、dxパラメータと dyパラメータは 0 から 65535 までの値をとります。これらの座標は、イベントプロシージャによって、画面上の座標に変換されます。 座標 (0,0) は画面の左上隅に、(65535,65535) は画面の右下隅に変換されます。 MOUSEEVENTF_ABSOLUTE を指定しなかった場合、dxパラメータと dyパラメータの値は、直前のマウス位置からの相対的な移動量として解釈されます。正の値は右 (または下) への移動を示し、負の値は左 (または上) への移動を示します。単位はピクセルです。 |
'マウスの左クリックをしますのでご注意下さい Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) 'ここから下は使う分だけ指定して下さい Private Const MOUSEEVENTF_ABSOLUTE = &H8000 Private Const MOUSEEVENTF_MOVE = &H1 Private Const MOUSEEVENTF_LEFTDOWN = &H2 Private Const MOUSEEVENTF_LEFTUP = &H4 Private Const MOUSEEVENTF_RIGHTDOWN = &H8 Private Const MOUSEEVENTF_RIGHTUP = &H10 Private Const MOUSEEVENTF_MIDDLEDOWN = &H20 Private Const MOUSEEVENTF_MIDDLEUP = &H40 Private Sub Command1_Click() mouse_event MOUSEEVENTF_MOVE, 200, 100, 0, 0 '相対的にXに200、Yに100動きます mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 'マウスの左を押した状態にします mouse_event MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0 'マウスの左を離した状態にします '連続して、『押す離す押す離す』でWクリックになります End Sub |
マウスの移動はAPIのSetCursorPosを使うのが一般的です 誤作動を起すと、変なところをクリックし始めるのでお気をつけ下さい |