dポイントプレゼントキャンペーン実施中!

表題のとおりで、VB6を使用して、
指定した座標にマウスを移動したいのですが、
どのようにやればよいでしょうか?

また、VB6でマウスをクリックするイベントを
作るには、どうしたらよいでしょうか?

A 回答 (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()をコールします。
    • good
    • 0
この回答へのお礼

ありがとうございます。
できました。

お礼日時:2006/05/13 03:54

移動させるのはクリックさせるためですか?




もしそうであれば、マウスを移動させなくてもクリックできます。

VBカテゴリを
SendMessage GetDlgCtrlID BN_CLICKED
で検索をしてみてください。

この方法は、マウスのアップダウンを制御する方法ではないので、「マウスダウン」「マウスアップ」の間に、ユーザによる割り込み処理を防ぐ事ができます。
どの言語で作成されたExeでも、クリックイベントを発生させることができます。
    • good
    • 0
この回答へのお礼

ありがとうございます。
できました。

お礼日時:2006/05/13 03:54

#2です。


すみません、少しミスってました。

' クリックを擬似的に行う
Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
Call mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
    • good
    • 0

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)
    • good
    • 0
この回答へのお礼

ありがとうございます。
できました。

お礼日時:2006/05/13 03:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!