yiyangyang 发表于 2005-11-15 16:55:43

help--关于.NET中的listbox--急

在录制.NET开发的c/s架构下的控件listbox时,总是录制成object对象,这样使得listbox中的值不能选取,那位高手帮忙看看。
录制的脚本就变成obj_mouse_click ("listbox", 153, 20, LEFT); 但是回放时就不能正确的选取到值;
同时我换成这样的写法,即 obj_click_on_text("listbox","A106");回放时还是取不到值;
具体图片如下:

Mac.Meng 发表于 2005-11-15 17:16:47

可以用Analog模式录制一下。
安装了.NET的ADD-IN 了吗?还有就是WR对.NET支持的不大好~

yiyangyang 发表于 2005-11-15 17:59:16

可是如果用Analog模式的话,怎么采用参数的方式那,因为这个listbox中的值会做变化的。

yiyangyang 发表于 2005-11-15 18:03:15

请问NET的ADD-IN 哪里有免费下载的呀,我机子上没装这个

Mac.Meng 发表于 2005-11-16 09:02:27

哦,,,我也不知道哪有的下阿~~

yiyangyang 发表于 2005-11-16 11:07:49

如果使用Analog模式的话,在回放时,比较麻烦,那位高手知道怎么把这个listbox映射成标准的listbox那。

yiyangyang 发表于 2005-11-16 11:13:26

我在tool-->GUI Map Configuration 中添加该控件:
set_class_map("netcombobox", "listbox");
set_record_attr("netcombobox", "class attached_text", "MSW_id", "location");
set_record_method("netcombobox", RM_RECORD);
之后,在重新进行录制,还是不能够识别出来。同时这个GUI重新打开winrunner后,该映射也没有了,需要重新再设置,那位高手知道映射后怎么变成永久有效的麻?

yiyangyang 发表于 2005-11-16 11:38:33

采用了虚拟对象的映射,具体GUI如下:
cliniquelist
{
class: list,
virtual: TRUE,
x: 199,
y: 154,
width: 188,
height: 26,
rows: 1,
columns: 1
}

对应的脚本变成了list_select_item("cliniquelist", "#0");或者改成list_select_item("cliniquelist", "A203");但是回放时还是不能选中具体的值;
这时候该怎么办了呀?那位高手赶紧进来看看,怎么解决那。急呀

yiyangyang 发表于 2005-11-16 16:54:36

终于得到解决了,不过还是参考TSL中的写法,对listbox写了一个函数就可以实现了,感谢大家的帮助哦:)
具体如下:#主要抓取listbox中的值
public functionshow_topic(in win, in controllist,in str)
{
   auto text,text1,rc,arr[];

        # Search for the topic string within the object.
        # If not found, scroll down to end of document.

        set_window (win, 1);
        obj_mouse_click (controllist, 1, 1, LEFT);
        type ("<kCtrl_L-kHome_E>");
        type("<kReturn>");
        while(rc=obj_click_on_text(controllist,str,TRUE,LEFT))
        {
                type ("<kDown_E>");
                obj_get_text(controllist, text);
                if(text==text1)
                        return E_GENERAL_ERROR;
                        text1=text;
        }
}
页: [1]
查看完整版本: help--关于.NET中的listbox--急