- ベストアンサー
指定した位置にマウスを移動したい。
表題のとおりで、VB6を使用して、 指定した座標にマウスを移動したいのですが、 どのようにやればよいでしょうか? また、VB6でマウスをクリックするイベントを 作るには、どうしたらよいでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
APIで出来るようです。 Option Explicit Private Declare Function SetCursorPos Lib "user32" _ (ByVal x As Long, ByVal y As Long) As Long Private Sub Command1_Click() Dim a As Long Dim x As Long Dim y As Long x = 100 y = 100 a = SetCursorPos(x, y) End Sub >VB6でマウスをクリックするイベントを作るには 作らなくてもイベントは発生します。 command1をクリックさせたいなら、 単にCommand1_Click()をコールします。
その他の回答 (3)
- 1050 円(@1050YEN)
- ベストアンサー率69% (477/687)
移動させるのはクリックさせるためですか? もしそうであれば、マウスを移動させなくてもクリックできます。 VBカテゴリを SendMessage GetDlgCtrlID BN_CLICKED で検索をしてみてください。 この方法は、マウスのアップダウンを制御する方法ではないので、「マウスダウン」「マウスアップ」の間に、ユーザによる割り込み処理を防ぐ事ができます。 どの言語で作成されたExeでも、クリックイベントを発生させることができます。
お礼
ありがとうございます。 できました。
- ttyp03
- ベストアンサー率28% (277/960)
#2です。 すみません、少しミスってました。 ' クリックを擬似的に行う Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) Call mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
- ttyp03
- ベストアンサー率28% (277/960)
APIを使います。 Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long 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_LEFTDOWN = &H2 ' left button down Private Const MOUSEEVENTF_LEFTUP = &H4 ' left button up ~ ' カーソルの移動(この例ではX=100,Y=200) Call SetCursorPos(100, 200) ' クリックを擬似的に行う Call mouse_event(MOUSEEVENTF_LEFTDOWN + mouseevent_leftup, 0, 0, 0, 0) Call mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
お礼
ありがとうございます。 できました。
お礼
ありがとうございます。 できました。