我必须右键单击一个网络元素。我尝试了以下方法:
为简单起见,假设webElem
指的是有效的Browser().Page().WebElement()
.
1)
Set obj=createobject("mercury.devicereplay")
getX = webElem.GetROProperty("abs_x")
getY = webElem.GetROProperty("abs_y")
'obj.MouseClick getX, getY,RIGHT_MOUSE_BUTTON
上面的代码不起作用
2)
webElem.RightClick
此代码也不起作用
3)以下代码有效:
Setting.WebPackage("ReplayType") = 2
webElem.RightClick
Setting.WebPackage("ReplayType") = 1
我的问题是:
为什么我必须更改设备重播类型才能使右键单击工作?其中,单击方法工作正常。
为什么,通过
Mercury.DeviceReplay
对象,MouseClick
方法不起作用?我怎样才能通过
FireEvent
方法做到这一点?(请详细解释FireEvent
方法,仅供参考:我是QTP的新手)还有什么其他方法可以做到这一点?
谁能解释一下为什么有些方法有效而有些方法无效。
谢谢, 斯里塔姆