help--关于.NET中的listbox--急
在录制.NET开发的c/s架构下的控件listbox时,总是录制成object对象,这样使得listbox中的值不能选取,那位高手帮忙看看。录制的脚本就变成obj_mouse_click ("listbox", 153, 20, LEFT); 但是回放时就不能正确的选取到值;
同时我换成这样的写法,即 obj_click_on_text("listbox","A106");回放时还是取不到值;
具体图片如下: 可以用Analog模式录制一下。
安装了.NET的ADD-IN 了吗?还有就是WR对.NET支持的不大好~ 可是如果用Analog模式的话,怎么采用参数的方式那,因为这个listbox中的值会做变化的。 请问NET的ADD-IN 哪里有免费下载的呀,我机子上没装这个 哦,,,我也不知道哪有的下阿~~ 如果使用Analog模式的话,在回放时,比较麻烦,那位高手知道怎么把这个listbox映射成标准的listbox那。 我在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后,该映射也没有了,需要重新再设置,那位高手知道映射后怎么变成永久有效的麻? 采用了虚拟对象的映射,具体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");但是回放时还是不能选中具体的值;
这时候该怎么办了呀?那位高手赶紧进来看看,怎么解决那。急呀 终于得到解决了,不过还是参考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]