51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2731|回复: 8
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-11-15 16:55:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在录制.NET开发的c/s架构下的控件listbox时,总是录制成object对象,这样使得listbox中的值不能选取,那位高手帮忙看看。
录制的脚本就变成obj_mouse_click ("listbox", 153, 20, LEFT); 但是回放时就不能正确的选取到值;
同时我换成这样的写法,即 obj_click_on_text("listbox","A106");回放时还是取不到值;
具体图片如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2005-11-15 17:16:47 | 只看该作者
可以用Analog模式录制一下。
安装了.NET的ADD-IN 了吗?还有就是WR对.NET支持的不大好~
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2005-11-15 17:59:16 | 只看该作者
可是如果用Analog模式的话,怎么采用参数的方式那,因为这个listbox中的值会做变化的。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2005-11-15 18:03:15 | 只看该作者
请问NET的ADD-IN 哪里有免费下载的呀,我机子上没装这个
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2005-11-16 09:02:27 | 只看该作者
哦,,,我也不知道哪有的下阿~~
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2005-11-16 11:07:49 | 只看该作者
如果使用Analog模式的话,在回放时,比较麻烦,那位高手知道怎么把这个listbox映射成标准的listbox那。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 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后,该映射也没有了,需要重新再设置,那位高手知道映射后怎么变成永久有效的麻?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 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");但是回放时还是不能选中具体的值;
这时候该怎么办了呀?那位高手赶紧进来看看,怎么解决那。急呀
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2005-11-16 16:54:36 | 只看该作者
终于得到解决了,不过还是参考TSL中的写法,对listbox写了一个函数就可以实现了,感谢大家的帮助哦:)
具体如下:#主要抓取listbox中的值
public function  show_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 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-9 05:34 , Processed in 0.074552 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表