用API函数。袁飞WIN32API超级工具中有例程。http://ygyuan.go.163.com
解决方案 »
- vb有什么好的电子书
- 请教高手:VB MSComm接受数据不全
- 我下载了个李洪根大哥的局域网消息发送器,但一发送就提示找不到NETAPI32.DLL?
- 求ls0242 (ls0242) 以C/S源碼
- 问题出在哪里?
- 好久没有回VB版了,看到(分儿,我来了)当了MVP,真心祝贺他。。。。(散点分)
- 查找文件夹
- 请问VB在WIN98中是否能装SP5?他能装到SP几?
- 怎么实现一个Ado控件在不同的时候连接到不同的数据库?
- 关于csdn的这次改动,请斑竹来看看
- VB7中使用dim hbm as integer:hbm = system.Drawing.Bitmap.GetHBITMAP(me.BackgroundImage)
- 这样的问题,有人回答吗?
用Windows API:移动鼠标:
Public Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long
其中 X、Y 为鼠标的坐标
例:SetCursorPos 100,200 (记住坐标以像素为单位)Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202
其中:hwnd 为接收鼠标消息的窗体的句柄
wMsg 为鼠标消息(如:WM_LBUTTONDBLCLK 就是鼠标左键双击)
wParam 为消息参数,表示键盘按键和鼠标键的组合(以MK_开头的API常数)
lParam 为消息参数,表示鼠标按键的位置(高字:Y坐标,低字:X坐标)对不起,不能写例子了,13:30代理服务就要关了。如果还有问题可发邮件给我。([email protected])
记得给我加分啊!
我要说的是:用sendmessage不可能做到完全实现鼠标的功能。
你可以看看我的问题,在http://www.csdn.net/expert/TopicView.asp?id=62054
【VB声明】
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)【说明】
模拟一次鼠标事件 【备注】
进行相对运动的时候,由SystemParametersInfo函数规定的系统鼠标轨迹速度会应用于鼠标运行的速度【参数表】
dwFlags -------- Long,下述标志的一个组合
MOUSEEVENTF_ABSOLUTE dx和dy指定鼠标坐标系统中的一个绝对位置。在鼠标坐标系统中,屏幕在水平和垂直方向上均匀分割成65535×65535个单元 - MOUSEEVENTF_MOVE
移动鼠标
MOUSEEVENTF_LEFTDOWN
模拟鼠标左键按下
MOUSEEVENTF_LEFTUP
模拟鼠标左键抬起
MOUSEEVENTF_RIGHTDOWN
模拟鼠标右键按下
MOUSEEVENTF_RIGHTUP
模拟鼠标右键按下
MOUSEEVENTF_MIDDLEDOWN
模拟鼠标中键按下
MOUSEEVENTF_MIDDLEUP
模拟鼠标中键按下
dx
Long,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定水平方向的绝对位置或相对运动 dy ------------- Long,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定垂直方向的绝对位置或相对运动 cButtons ------- Long,未使用 dwExtraInfo ---- Long,通常未用的一个值。用GetMessageExtraInfo函数可取得这个值。可用的值取决于特定的驱动程序