Project1

标题: 问下关于用API模拟鼠标左键的按下和抬起 [打印本页]

作者: 后知后觉    时间: 2011-2-7 15:32
标题: 问下关于用API模拟鼠标左键的按下和抬起
本帖最后由 后知后觉 于 2011-2-7 15:35 编辑

准备想做一个反复模拟鼠标左键 按下...抬起 的东西.
但是API的参数值一直没找到在哪去查= =b.
手里就一本 api32 的电子书.里面没有常量表= =.
要模拟鼠标的动作.貌似可以用 mouse_event
下面是相关的信息:

mouse_event

VB声明
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)
说明
模拟一次鼠标事件
参数表
参数 类型及说明
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函数可取得这个值。可用的值取决于特定的驱动程序
注解
进行相对运动的时候,由SystemParametersInfo函数规定的系统鼠标轨迹速度会应用于鼠标运行的速度


Top



如果可以说一下像这样的东西的具体值是在哪查到的就更好拉^_^ 谢谢了
MOUSEEVENTF_LEFTDOWN
MOUSEEVENTF_LEFTUP
MOUSEEVENTF_RIGHTDOWN
MOUSEEVENTF_RIGHTUP

模拟左键按下/抬起的时候保持鼠标的坐标不变
作者: IamI    时间: 2011-2-7 15:38
本帖最后由 IamI 于 2011-2-7 15:41 编辑

网上随便找的:http://www.hongen.com/pc/program/apitutor/api0006/api01.htm
msdn:http://msdn.microsoft.com/en-us/library/ms646260(v=vs.85).aspx
另外当年zh似乎用了另一个更简单的API...我找找
作者: 后知后觉    时间: 2011-2-7 16:04
多谢II了.
看了下
是这几个么
'对API变量的定义
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10



模拟左键按下是这样么?
Win32API.new("user32","mouse_event","lllll","v").call(2,0,0,0,0)




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1