我们已经实现了键盘的自动输入,再看看鼠标,相对比较简单些了.
要查找API的声明,常数等,VISUAL STDUIO的API VIEWER工具非常好,它是用于VB的,也特别适合LABVIEW,先看看我们需要的API和它的常数.
Public 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)
Public Declare Function GetCursorPos Lib "user32" Alias "GetCursorPos" (lpPoint As POINTAPI) As Long
Public Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long
Public Type POINTAPI
x As Long
y As Long
End Type
Public Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button
down
Public Const MOUSEEVENTF_LEFTUP = &H4 ' left button up
Public Const MOUSEEVENTF_MIDDLEDOWN = &H20 ' middle
button down
Public Const MOUSEEVENTF_MIDDLEUP = &H40 ' middle button
up
Public Const MOUSEEVENTF_MOVE = &H1 ' mouse move
Public Const MOUSEEVENTF_RIGHTDOWN = &H8 ' right button
down
Public Const MOUSEEVENTF_RIGHTUP = &H10 ' right button up
Public Const MOUSETRAILS = 39
我们需要三个API函数,这三API函数都在user32.dll中
mouse_event----产生鼠标事件
GetCursorPos----取鼠标的坐标
SetCursorPos----移动鼠标到指定位置.
我们先定义一个Point簇,代表一个点.一个ENUM,选择SET OR GET ,然后分别调用两个API,封装在一个VI里



mouse_event最好配合SetCursorPos(x,y)函数一起使用,与Keybd_event类似,mouse_event有五个参数,第一个为选项标志,为MOUSEEVENTF_LEFTDOWN时表示左键按下为MOUSEEVENTF_LEFTUP表示左键松开,向系统发送相应消息。第二三个参数分别表示x,y
相对位置,一般可设为0,0,第四五个参数并不重要,一般也可设为0,0。

下面的程序是应用已经封装好的VI,自动按左下角的开始按钮
