我们有一个功能可以访问标准Windows应用程序中的按钮和列表框等两种类型的控件。该函数仅使用控件名作为参数,因此qtp无法理解它是什么类型的控件。怎么解决这个?写2个独立的功能 - 1用于按钮&另一个列表框?
答案 0 :(得分:2)
这取决于你想要对象做什么,如果你想做所有WinObjects
(例如Click
或GetROProperty
)共同的事情,你可以这样做,如果它是特定于不同的测试对象,你必须有不同的方法(或至少在内部以不同的方式对待)
科学模式中 Calc.exe 的示例:
Public Function Click(ByVal Name)
Window("text:=Calculator").WinObject("text:=" & Name).Click
End Function
Click "8" ''# This is a button
Click "Oct" ''# This is a radio button
运行结果后,10
(八进制8)
另一种方法是使用ChildObjects
来获取与此属性匹配的所有对象(在本例中为1),检查它是什么类型的对象(GetROProperty("micclass")
)和打开它以执行您的特定操作。