在 UFT 中使用箭头键选择下拉菜单中的第 X 项

问题描述 投票:0回答:1

我将参数 X 传递给 UFT 中的子例程,该子例程将转到下拉控件并选择第 X 项

我的第一次尝试成功了,我基本上只是多次“向上”发送以确保我在菜单的顶部,然后“向下”发送 X 次以到达我想要的项目

Win().Click 431, 548 'selecting the dropdown
        
For Iterator = 1 To 10 Step 1 'reset the selector to be on the top level
    Win().Key micUp
Next
For Iterator = 1 To X Step 1
    Win().Key micDwn
Next
Win().Key micReturn


但是,输入发生得非常慢,我希望它发生得更快,所以我尝试在一次调用 Key 函数之前连接所有我想按下的按钮:

Win().Click 431, 548 'selecting the dropdown
        
Dim KeyInput
KeyInput = ""
For Iterator = 1 To 10 Step 1 'reset the selector to be on the top level
    KeyInput = KeyInput & micUp
Next
For Iterator = 1 To X Step 1
    KeyInput = KeyInput & micDwn
Next
KeyInput = KeyInput & micReturn

Win().Key KeyInput

但是,我根本没有得到任何关键输入——是否有不同的连接方式?

编辑:至于其他方法,它不是标准的下拉菜单,所以据我所知,我不能做任何依赖于直接与它交互的事情。

vbscript hp-uft uft14
1个回答
0
投票

当你说很慢的时候,你的意思是多慢? 我看到两个选项:

  • 您正在识别的对象使用智能识别,这使得它very慢(如this question中所述)。在这种情况下,您可以尝试按照此处所述解决问题,或者解决方法是使用
    Set
    捕获变量中的对象,这将防止它在每次使用时都被识别(如果这样做是安全的,进一步阅读).
  • 步骤只是有点慢,在这种情况下检查Run Mode部分设置中步骤之间的间隔
© www.soinside.com 2019 - 2024. All rights reserved.