51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1505|回复: 2
打印 上一主题 下一主题

[原创] DeviceReplay对象实现鼠标点击事件

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-4-15 14:01:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想使用DeviceReplay对象实现点击鼠标的操作,写了下面这个函数,但是运行后并没有点击指定的对象,请哪位热心的仁兄帮忙解答下,谢谢!
Function RtClick(obj)
   absx = Obj.GetROProperty("abs_x")
   absy = Obj.GetRoProperty("abs_y")

   Set devReplay = CreateObject("mercury.devicereplay")

   devReplay.MouseClick absx+2,absy+2,0

   Set devReplay =  nothing
   
End Function

ps:写该函数,主要是因为click事件在我的项目里不稳定,有时候能够点击成功,有时没有点击成功
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-4-15 14:21:13 | 只看该作者
函数是没问题的,看调用函数是否有问题了
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2010-4-15 15:37:15 | 只看该作者
问题解决了
要使用DeviceReplay,你必须确保被测试的应用程序(AUT)是处于激活状态的窗口。如果你想对某个对象执行一项操作,则该对象必须拥有焦点(focus)。对于Windows应用程序,可以使用Activate方法:
Window( "W" ).Activate micLeftBtn
        如果想把焦点设置到某个指定的对象上,通常使用Click方法可以完成。
        对于Web环境的应用程序,Activate方法不被支持,因此可以使用下面的技巧来完成:
hwnd = Browser( "B" ).GetROProperty( "hwnd" )
Window( "hwnd:=" & hwnd ).Activate micLeftBtn

详见:http://www.51testing.com/html/55/n-81655.html
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-10-6 20:40 , Processed in 0.093631 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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