wyy7hao 发表于 2007-1-4 23:33:44

CombolistBox的识别问题

使用robot录制脚本的时候,对于combolistbox,录制的时候脚本语言是这样:
ComboBox Click,"Type=ComboBox;Name=Rec",""
ComboListBox Click,"Type=ComboListbox;Name=Rec","Text=random"
执行的时候有时候能执行通过,有时候确不能通过。不能通过的时候重新录制了脚本,发现记录不一样了。
ComboBox Click,"Type=ComboBox;Name=Rec",""
ComboListBox Click,"ObjectIndex=0","ItemData=187471988"
而这个ItemData的值还不是固定的。请大牛们给分析分析

wyy7hao 发表于 2007-1-7 22:44:54

??? 谁有想法,说说看吧。不要吝啬

caesarqth 发表于 2007-1-8 13:35:33

最好找到属性的唯一标识,不会变化的
如果ItemDate的值总是变化,或者使用通配符*,或者为空试一下
ComboListBox Click,"ObjectIndex=0","ItemData={*}“
ComboListBox Click,"ObjectIndex=0","ItemData=”

我也只是猜的,不知道有没有用

jackymail 发表于 2007-1-8 16:59:54

我觉得win32的程序就用text作为识别对象比较好,web程序就用id作为识别的对象,或者index.
还有楼上的那个{*}通配符对于经常变化的数据也很不错。

wyy7hao 发表于 2007-1-8 22:30:56

ItemData项是我要选的数据,如果用*,也不能选中我要的数据。
奇怪在于如果写成Text的话,我重启机器后能识别出来。过了一段时间后就不能再识别了。

dionysus 发表于 2007-1-8 23:44:12

如果改成index呢?记得robot在record option中可以设置部分类识别的属性,如list类可以选择使用contents或index来识别,你勾选一个看看吧

wyy7hao 发表于 2007-1-10 19:34:34

我试了,不行。。谁有更好的方法。

wyy7hao 发表于 2007-1-10 19:46:01

我对combolistbox的识别方法顺序定为object name,label,index,id.
这个和对combobox的识别方法顺序一样的。
我理解为robot识别对象的时候,是按照顺序执行2种识别方法,直到识别出唯一的对象。
因为录制的时候总是combobox也进行了操作,尽管type不同,它们的name是一样的。所以有时候
object name方法就识别不了combolistbox.后来用了label方法进行识别。而回放的时候itemdata不一样,所以执行中断。

以上是我的猜想,明天去实践。
页: [1]
查看完整版本: CombolistBox的识别问题