duancj_1982 发表于 2004-12-15 11:47:06

谢谢大家,问题已经解决了,但可以告下这样做的原因吗??

求教:有什么函数可以获取label的值吗??这是我要取得label的属性
http://www.chinapro.com/888/label.bmp
http://www.chinapro.com/888/shuxing.bmp

[ Last edited by duancj_1982 on 2004-12-17 at 10:20 ]

pcl2004_27 发表于 2004-12-15 12:15:23

代码例子:
Dim sMyProtocolNo as Variant
Window SetContext, "Caption=xxxxx", ""
Result = SQAGetProperty("Type=Label;ObjectIndex=1", "Text",sMyProtocolNo)

duancj_1982 发表于 2004-12-16 09:11:07

这是我要取得的label属性,我用了SQAGetProperty方法,但还是不行啊

这是我要取得的label属性,我用了SQAGetProperty方法,但还是不行啊
http://www.chinapro.com/888/label.bmp
http://www.chinapro.com/888/shuxing.bmp

sesamehch 发表于 2004-12-16 09:39:48

把你的Robot脚本贴上来,大家研究一下。

司空公子 发表于 2004-12-16 10:09:45

这种问题一般都是window活动不在当前的dialog上。
所以你可以在SQAGetProperty语句前加上
Window SetTestContext, "Caption=XXXXX",""
或者在SQAGetProperty语句中写成
SQAGetProperty("Caption=XXXXX;\;Type=Label;ObjectIndex=1", "Text",sMyProtocolNo)

duancj_1982 发表于 2004-12-16 10:47:36

这是我的代码,是不是我的那个函数使用的不对啊??

那个label中是caption中有我要的数值,所以我想获取它的值。不知道是不是我的函数使用方法不对?
Sub Main
    Dim Result As Integer
    Dim sMyProtocolNo as Variant

    'Initially Recorded: 2004-12-1610:37:32
    'Script Name: f04
   
    Window SetContext, "Caption=Program Manager", ""
    ListView DblClick, "ObjectIndex=1;\;ItemText=快捷方式 ClassicsA.exe", "Coords=31,24"
   
    Window SetContext, "Name=frmExistingLogin", ""
    PushButton Click, "Name=cmdOK"
   
    Window SetContext, "Name=frmMain", ""
    PushButton Click, "Name=cmdOrder"
   
    Window SetContext, "Name=frmOrder", ""
    InputKeys "1"
    EditBox Click, "Name=txtExpirationDate", "Coords=40,2"
    InputKeys "1"
   
    Result = SQAGetProperty("ClassName = Label;Name = lblTotal", "Caption",sMyProtocolNo)
    msgbox sMyProtocolNo
   
    PushButton Click, "Name=cmdOrder"
   
    Window SetContext, "Name=frmConfirm", ""
    PushButton Click, "Name=cmdOK"
   
    Window SetContext, "Name=frmMain", ""
    MenuSelect "File->Exit"

End Sub

sesamehch 发表于 2004-12-16 11:16:40

lblTotal这个Label是在frmOrder这个窗体里的吗?

现在msgbox sMyProtocolNo显示的是什么?改成msgbox result看看显示什么。

duancj_1982 发表于 2004-12-16 12:07:06

这是返回的结果图

“lblTotal”是在“frmOrder”里
这是返回“result”时的结果
http://www.chinapro.com/888/result.bmp

这是返回“sMyProtocolNo”时的结果
http://www.chinapro.com/888/sMyProtocolNo.bmp

sesamehch 发表于 2004-12-16 14:28:57

1002        sqaInvalidRecString        Invalid syntax in recMethod.

它的意思说你的recMethod的语法错误

你试一下把"ClassName = Label;Name = lblTotal",改成“Name = lblTotal”或者其他标识

duancj_1982 发表于 2004-12-16 16:52:10

那我在试试看。。。



[ Last edited by duancj_1982 on 2004-12-16 at 16:58 ]

pcl2004_27 发表于 2004-12-17 09:47:15

代码修改为:
Result = SQAGetProperty("Type=Label;Name=lblTotal", "Caption",sMyProtocolNo)
就可以了

duancj_1982 发表于 2004-12-17 10:18:24

谢谢大家。。。问题已经解决了

谢谢大家。。。问题已经解决了,那可以指点一下为什么这样改就可以通过呢??
页: [1]
查看完整版本: 谢谢大家,问题已经解决了,但可以告下这样做的原因吗??