描述性编程->解决识别运行时的对象

Solution 1

Dim objWebEdit

Set objWebedit=Browser("OSS Main Page").Page("SANDY-Ver. 27.0 / OSS_2").WebEdit("name:=os")
objWebEdit.Set "yangweijun"
InputValue=objWebEdit.GetROProperty("value")
===========================================

Solution2:
例子:由于在页面上有许多WebEdit, 因此我们需要选择属性是”OS”的WebEdit , 在里输入文本,并获取输入值。
Set objDescription=Description.Create()  //使用create方法,创建一个新的description描述性对象,并赋给一个新对象
objDescription("type").value="text" //赋属性值给新对象
objDescription("html tag").value="INPUT"
objDescription("name").value="os"
Set objWebEdit=Browser("OSS Main Page").Page("SANDY-Ver. 27.0 / OSS_2").WebEdit(objDescription)       //Call 动态WebEdit对象并赋值给新对象
objWebEdit.Set "yangweijun"
Dim InputValue
InputValue=objWebEdit.GetROProperty("value")

===============================================

Solution3
例子:回放删除订单的脚本失败,因为脚本中的对象已经不存在。虽然订单复选框都是CheckBox,但是对象名称不相同。
使用描述性编程的思想是: 设置对象的属性,判断满足条件的对象不为0,随机选择一个删除,并报告结果
Dim objDescription
Dim objCheckBoxes
Dim objCheckBoxes_Counts
Set objDescription = Description.Create()
objDescription("type").value="CheckBox"
objDescription("html tag").value="INPUT"
Set objCheckBoxes=Browser("").Page("").ChildObjects(objDescription)
objCheckBoxes_Counts=objCheckBoxes.count()
If  objCheckBoxes_Counts<>0 Then
                intRandomIndex=RandomNumber(0,objCheckBoxes_Counts-1)
                objCheckBoxName=objCheckBoxes(intRandomIndex).GetRoProperty("name")
                objCheckBoxes.set "ON"
End If

你可能感兴趣的:(描述性编程->解决识别运行时的对象)