| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1952 人关注过本帖
标题:[求助]已知控件句柄,如何模拟鼠标在控件上按下弹起的动作
只看楼主 加入收藏
烟雨袅袅
Rank: 6Rank: 6
来 自:星空雨际
等 级:侠之大者
威 望:1
帖 子:430
专家分:494
注 册:2007-11-26
结帖率:100%
收藏
 问题点数:0 回复次数:4 
[求助]已知控件句柄,如何模拟鼠标在控件上按下弹起的动作
我想按下某个已知句柄的 "确定"键 ,但是要在电脑注销的情况下按下"确定",可以通过哪些api实现,向各位求教了

这个"确定"键是在其它软件上,是不自己编的

[[italic] 本帖最后由 烟雨袅袅 于 2007-12-18 15:04 编辑 [/italic]]
搜索更多相关主题的帖子: 句柄 鼠标 控件 动作 弹起 
2007-12-18 15:01
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 
SendMessage
WM_LBUTTONDOWN
WM_LBUTTONUP

我的msn: myfend@
2007-12-18 15:15
烟雨袅袅
Rank: 6Rank: 6
来 自:星空雨际
等 级:侠之大者
威 望:1
帖 子:430
专家分:494
注 册:2007-11-26
收藏
得分:0 
原帖由 [bold][underline]purana[/underline][/bold] 于 2007-12-18 15:15 发表 [url=http://bbs.][/url]
SendMessage
WM_LBUTTONDOWN
WM_LBUTTONUP

怎么又是你,呵呵
我试试看
2007-12-18 15:23
烟雨袅袅
Rank: 6Rank: 6
来 自:星空雨际
等 级:侠之大者
威 望:1
帖 子:430
专家分:494
注 册:2007-11-26
收藏
得分:0 
不行啊
Const WM_LBUTTONDOWN = &H201
Const WM_LBUTTONUP = &H202
WindowHandle = FindWindow(vbNullString, "1")'查找窗口
MsgBox "WindowHandle1=" & WindowHandle '判断窗口句柄是否能找到

WindowHandle1 = FindWindowEx(WindowHandle, 0, "ThunderRT6CommandButton", vbNullString)'查找按钮MsgBox "WindowHandle1=" & WindowHandle1 '判断控件句柄是否能找到

SendMessage WindowHandle1, WM_LBUTTONDOWN, 0, 0
Sleep (1000)
SendMessage WindowHandle1, WM_LBUTTONUP, 0, 0


窗口 1 里只有一个按钮控件,按下控件会弹出msgbox
SendMessage Sleep FindWindow 这些我都声明了,执行后控件好像被选中了,但是没有按下去,这是怎么回事

[[italic] 本帖最后由 烟雨袅袅 于 2007-12-18 16:14 编辑 [/italic]]

工程.rar (4.67 KB)
2007-12-18 16:01
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
【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)

【别名】
  mouse_event

【说明】
  模拟一次鼠标事件

【参数表】
  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函数规定的系统鼠标轨迹速度会应用于鼠标运行的速度

VB QQ群:47715789
2007-12-21 13:38
快速回复:[求助]已知控件句柄,如何模拟鼠标在控件上按下弹起的动作
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017856 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved