51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5232|回复: 17
打印 上一主题 下一主题

[Robot] robot对鼠标滚轮的识别

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2004-12-7 15:43:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
robot能对鼠标滚轮识别吗?

需要设置什么?

我这里识别不了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2004-12-7 15:54:08 | 只看该作者
鼠标滚轮?
楼主这需要识别么

能不能把你的需求说出来!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2004-12-7 15:58:05 | 只看该作者
我在一个类似Auto CAD的图形平台里面,滚动鼠标滚轮可以缩小或放大图形,但是robot识别不了。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2004-12-7 16:28:52 | 只看该作者
对图形程序进行自动化脚本开发,一般用坐标的方式录制脚本

而且识别对象是需要结合你开发的语言,不能孤立的看待问题
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2004-12-7 16:40:54 | 只看该作者
我是用坐标方式的,但是它识别不了鼠标滚轮滚动这个事件。

[ Last edited by sharpwood on 2004-12-7 at 16:42 ]
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2004-12-7 17:11:29 | 只看该作者
Robot无法识别鼠标滚轮,如果确实需要的话可能需要调用相关的api了。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2004-12-7 20:01:55 | 只看该作者
在robot中怎么调用api以支持滚轮的滚动,请大虾指教。
我很需要相关的材料。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2004-12-8 09:29:21 | 只看该作者
实现应用程序支持鼠标滚轮的关键是,捕获鼠标滚轮的消息 MSH_MOUSEWHEEL、WM_MOUSEWHEEL。其中MSH_MOUSEWHEEL是为95准备的,需要Intellimouse驱动程序,而WM_MOUSEWHEEL是目前各版本Windows(98/NT40/2000)内置的消息。本文主要处理WM_MOUSEWHEEL消息。下面是WM_MOUSEWHEEL的语法。

WM_MOUSEWHEEL
    fwKeys = LOWORD(wParam); /* key flags */  
    zDelta = (short) HIWORD(wParam);  
/* wheel rotation */
    xPos = (short) LOWORD(lParam);  
/* horizontal position of pointer */
    yPos = (short) HIWORD(lParam);  
/* vertical position of pointer */  
---- 其中:fwKeys指出是否有CTRL、SHIFT、鼠标键(左、中、右、附加)按下,允许复合。zDelta传递滚轮滚动的快慢,该值小于零表示滚轮向后滚动(朝用户方向),大于零表示滚轮向前滚动(朝显示器方向)。lParam指出鼠标指针相对屏幕左上的x、y轴坐标。  
---- 滚轮按钮相当于普通的三键鼠标的中键,根据滚轮按钮的动作,Windows分别发出WM_MBUTTONUP、WM_MBUTTONDOWN、WM_MBUTTONDBLCLK消息,这些消息
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2004-12-8 09:31:57 | 只看该作者
Const  GWL_WNDPROC  =  (-4)  
Const  WM_COMMAND  =  &H111  
Const  WM_MBUTTONDOWN  =  &H207  
Const  WM_MBUTTONUP  =  &H208  
Const  WM_MOUSEWHEEL  =  &H20A  

dim Oldwinproc  As  Long  

Declare  Function  SetWindowLong  Lib  "user32"  Alias  "SetWindowLongA"  (ByVal  hWnd  As  Long,  _  
ByVal  nIndex  As  Long,  ByVal  dwNewLong  As  Long)  As  Long  

Declare  Function  CallWindowProc  Lib  "user32"  Alias  "CallWindowProcA"  (ByVal  lpPrevWndFunc  As  Long,  _  
ByVal  hWnd  As  Long,  ByVal  Msg  As  Long,  ByVal  wParam  As  Long,  ByVal  lParam  As  Long)  As  Long  

Declare  Function  GetWindowLong  Lib  "user32"  Alias  "GetWindowLongA"  (ByVal  hWnd  As  Long,  _  
ByVal  nIndex  As  Long)  As  Long  

Function  FlexScroll(ByVal  hWnd  As  Long,  ByVal  wMsg  As  Long,  ByVal  wParam  As  Long,  ByVal  lParam  As  Long)  As  Long  
'支持滚轮的滚动  Yu  2004-5-10  15:33  
                 Select  Case  wMsg  
                                    
                               Case  WM_MOUSEWHEEL  
                                          
                                       Select  Case  wParam  

                                                     Case  -7864320    '向下滚  
                                                               SendKeys  "{PGDN}"  

                                                     Case  7864320      '向上滚  
                                                               SendKeys  "{PGUP}"  

                                       End  Select  
                                          
                 End  Select  
                  
                 FlexScroll  =  CallWindowProc(Oldwinproc,  hWnd,  wMsg,  wParam,  lParam)  
                  
End  Function
以上代码为支持鼠标滚动的代码(没有经过调试)
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2004-12-8 09:55:54 | 只看该作者
我录制的时候怎么支持滚轮呢?

这些代码要写到什么地方?
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2004-12-8 09:58:46 | 只看该作者
Robot不支持滚轮,所以无法录制。

建议把鼠标滚轮的操作封装为一个函数,在需要的地方进行调用。
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2004-12-8 13:54:27 | 只看该作者
录制的时候真的无法支持吗?
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2004-12-12 14:38:51 | 只看该作者
好像robot对一些鼠标的操作就是支持不好,你可以试一下testcomplete3.0
回复 支持 反对

使用道具 举报

该用户从未签到

14#
 楼主| 发表于 2004-12-12 18:52:21 | 只看该作者
testcomplete 哪儿有下载的,请教。
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2004-12-12 19:06:59 | 只看该作者
testcomplete你可以搜一下,不过好像目前能找到的都是Demo版,不过这个软件不贵,正版才几千块钱,我们公司已经去联系买正版了
回复 支持 反对

使用道具 举报

该用户从未签到

16#
 楼主| 发表于 2004-12-12 19:52:41 | 只看该作者
我搜索了,天天精品上面有,但是下不了,不过有注册码。

我下载了一个demo版的,但是没有地方能输注册码。

demo版的怎样?和robot比有哪些优势?
回复 支持 反对

使用道具 举报

该用户从未签到

17#
 楼主| 发表于 2005-11-16 20:13:37 | 只看该作者
up
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2005-12-22 13:46:38 | 只看该作者
hao dongdong,识别滚动轴
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-26 05:50 , Processed in 0.073433 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表