需要使用API函數
這段代碼需要壹個表單~~三個CommandButton,四個標簽框和壹個模塊。
註意:下面的代碼是Form1。
註:* * * * * * * * * * *[功能]* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。
#如果是Win32,則
private Declare Sub mouse _ event Lib " user 32 "(ByVal dw flags為Long,ByVal dx為Long,ByVal dy為Long,ByVal cButtons為Long,ByVal dwExtraInfo為Long)
註意:參數列表
註意:dwflags - long是以下符號的組合。
註意:MOUSEEVENTF_ABSOLUTE
註意:dx和dy指定鼠標坐標系中的絕對位置。在鼠標坐標系中,屏幕是水平和垂直的。
註:垂直方向平均分為65535×65535個單元——MOUSEEVE。
註:NTF _移動
註意:移動鼠標
註意:MOUSEEVENTF_LEFTDOWN
註意:模擬按下鼠標左鍵。
註意:MOUSEEVENTF_LEFTUP
註意:模擬鼠標左鍵擡起。
註意:MOUSEEVENTF_RIGHTDOWN
註意:模擬鼠標右鍵的按下。
註意:MOUSEEVENTF_RIGHTUP
註意:模擬鼠標右鍵的按下。
註意:MOUSEEVENTF_MIDDLEDOWN
註意:模擬鼠標中鍵的按下。
註意:MOUSEEVENTF_MIDDLEUP
註意:模擬鼠標中鍵的按下。
註:dx
註意:Long,根據是否指定了MOUSEEVENTF_ABSOLUTE標誌,指定水平方向的絕對位置或相位。
註意:對於運動
註意:dy - long,根據是否指定了MOUSEEVENTF_ABSOLUTE標誌來指定vertical。
註:絕對位置或方向的相對運動。
註意:按鈕-長型,未使用。
註意:dwextrainfo-long,壹個通常不使用的值。使用GetMessageExtraInfo函數獲取
註意:這個值。可用值取決於特定的驅動程序。
#End If註意:WIN32
註意:* * * * * * * * * < & lt[EOF]& gt;& gt***********************************
Dim p1作為POINTAPI,p2作為POINTAPI
尺寸x
暗淡Y
Dim X1
Dim Y1
private Const mouse event f _ MOVE = & amp;H1
private Const mouse event f _ left down = & amp;氘
private Const mouse event f _ left up = & amp;H4
private Const mouse event f _ ABSOLUTE = & amp;H8000
私有子命令1_Click()
MsgBox“否”
末端接頭
私有子命令2_Click()
MsgBox“是”
末端接頭
私有子命令3_Click()
調用MoveCursor(p1,p2)註意:鼠標由命令1 -> >控制;命令2
mouse _ event mouse event f _ ABSOLUTE或MOUSEEVENTF_LEFTDOWN,X1,Y1,0,0
mouse _ event mouse event f _ ABSOLUTE或MOUSEEVENTF_LEFTUP,X1,Y1,0,0
末端接頭
私有子窗體_Load()
Dim rect5 As RECT
調用getwindowrect(Command1 . hwnd,rect5)註意:獲取command 1相對於屏幕的坐標。
p1.x = (rect5。左+右5。右)\ 2
p1。Y = (rect5。ToP + rect5。底部)\ 2
調用GetWindowRect(Command2.hwnd,rect5)
p2.x = (rect5。左+右5。右)\ 2
p2。Y = (rect5。ToP + rect5。底部)\ 2
Label1。Caption = p2.x
標簽2。標題= p2。Y
x = Label1。標題
Y =標簽2。標題
X1 = (65535 \ 1024) * x
Y1 = (65535 \ 768) * Y
標簽3。Caption = X1
標簽4。Caption = Y1
末端接頭
註意:以下代碼在模塊中。
RECT標牌
左等長
頂端壹樣長
壹樣長
底部壹樣長
結束類型
POINTAPI類型
x壹樣長
只要
結束類型
將函數SetCursorPos Lib“user 32”(ByVal x為Long,ByVal Y為Long)聲明為Long
將函數GetWindowRect Lib“user 32”(ByVal hwnd為Long,lpRect為Rect)聲明為Long
聲明子睡眠庫“kernel 32”(ByVal dw milliseconds壹樣長)
public Sub move cursor(FromP As point API,ToP As POINTAPI)
Dim stepx壹樣長,stepy壹樣長,k壹樣長
Dim i壹樣長,j壹樣長,sDelay壹樣長
stepx = 1
stepy = 1
i = (ToP.x - FromP.x)
如果我& lt0,則stepx = -1
我=(頂。Y - FromP。y)
如果我& lt0那麽stepy = -1
For i = FromP.x To ToP.x Step stepx
調用SetCursorPos(i,FromP。y)
睡眠(1)
接下來我
因為i = FromP。y到頂部。壹步壹步
調用SetCursorPos(ToP.x,I)
睡眠(1)
接下來我
末端接頭