【问题标题】:Reg - Activating Application while using Device Replay MethodReg - 在使用设备重放方法时激活应用程序
【发布时间】:2013-04-17 19:34:57
【问题描述】:

我需要将击键和字符串传递到具有事件处理程序的编辑框中(一旦在编辑框中输入值,就会启用 Web 按钮。

在上述场景中,我使用的是设备重放方法。下面是我的代码。问题是无法使用设备重放对象激活我的浏览器。因此发送的密钥被正确发送到应用程序。

谁能帮我解决这个问题。

Set Obj = CreateObject ("Mercury.DeviceReplay")
Systemutil.Run "D:\QTP Training\Example Form\Dynamic_1.html"
Browser("Browser").Page("Page").Sync
For i=1 to 12
Obj.PressKey(09)
Next
Obj.SendString "Lakshman"
Browser("Browser").Page("Page").WebButton("Type and enable me").Click
Browser("Browser").Dialog("Message from webpage").WinButton("OK").Click

【问题讨论】:

  • 你试过用DeviceReplay点击WebEdit对象吗?
  • 非常感谢,我尝试了相同的方法,但得到的另一个问题是:水平制表符的 ASCII 代码是 09 但是当我使用它时无法导航到其他字段而是它在同一文本框中打印“8”。 Tab的这个ascii代码'09'不起作用的任何原因?
  • 你试过9而不是09吗?我不确定 VBScript,但在大多数语言中,前导 0 表示它是八进制数,9 不是八进制数。
  • 我尝试了带双引号和不带双引号的 '09' 和 '9'。但是他们俩都在编辑框中输入了字符“8”,而不是导航到另一个编辑框。

标签: qtp


【解决方案1】:

QTP 定义了一个名为 micTab 的常量,用于键入 Tab 键。试试这个,而不是09

【讨论】:

  • 不,这不起作用,给 micTab 给出类型不匹配错误。
【解决方案2】:

通过使用 sendkeys 方法,我在某些应用程序不支持某些 QTP 功能的异常情况下发现了成功。

试试Obj.SendKeys "{9}"

【讨论】:

  • 谢谢,SendKeys 方法通过创建 wscript.shell 对象来工作。但比较好奇的是我的 DeviceReplay 对象方法没用。
猜你喜欢
  • 2010-12-12
  • 1970-01-01
  • 2012-05-17
  • 1970-01-01
  • 2012-03-15
  • 1970-01-01
  • 2019-12-01
  • 2018-10-14
  • 2011-07-24
相关资源
最近更新 更多