将"测试"进行到底!~!
WR---H I G H L E V E L T S L F U N C T I O N S-之二
上一篇 /
下一篇 2008-02-05 17:47:33
/ 个人分类:WinRunner板块
{
if((version == NETSCAPE_40) || (version == NETSCAPE_45) || (version == NETSCAPE_404))
{
list_num =substr(attr_val,2);
list_get_item(list,list_num,attr_val);
}
}
}
else
rc = generic_get_info(TLIST, list, attr, attr_val);
save_report_info(old_report_name);
return(rc);
}
publicfunctionlist_get_selected(list,outlabel,outitem_index)
{
autorc, version, org_time,old_report_name;
if(nargs() !=3)
return(report_param_msg());
get_report_info(old_report_name);
save_report_info("list_get_selected");
if(window_is_a_browser_or_frame())
{
version = GetWindowActiveBrowserVersion();
ns_dont_pop_wizard = TRUE;
org_time = getvar("timeout_msec");
set_msec_timeout_no_report(1000);
# setvar("timeout", 1);
rc = activate_and_get_function(TLIST,list,"_list_get_selected",0,2,
label, item_index);
# setvar("timeout", org_time);
set_msec_timeout_no_report(org_time);
ns_dont_pop_wizard = FALSE;
if(rc != E_OK)
{
if(rc == E_NOT_FOUND || rc ==E_NOT_UNIQUE)
scroll_current_win();
rc = activate_and_get_function(TLIST,list,"_list_get_selected",0,2,
label, item_index);
}
list_get_item(list,item_index,label);
}
else
rc = activate_and_get_function(TLIST,list,"_list_get_selected",0,2,
label, item_index);
save_report_info(old_report_name);
return(rc);
}
publicfunctionlist_select_item(list, item, button, click_offset)
{
autorc, version,number,org_time,w,h,old_report_name;
autolist_wait_time=0;
autodesc, dummy, msw_class_attr,hWnd,count;
autowin =GUI_get_window( );
org_time = getvar("timeout_msec");
if(nargs() ==2){
button = LEFT;
click_offset = LIST_DEFAULT_CLICK_LOCATION;
}
elseif(nargs() ==3)
click_offset = LIST_DEFAULT_CLICK_LOCATION;
elseif(nargs() !=4)
return(report_param_msg());
get_report_info(old_report_name);
save_report_info("list_select_item");
if(window_is_a_browser_or_frame())
{
version = GetWindowActiveBrowserVersion();
ns_dont_pop_wizard = TRUE;
if((version == NETSCAPE_40) || (version == NETSCAPE_45) || (version == NETSCAPE_404))
list_wait_time=1;·#
# Bring window to front.
rc =win_get_info(win,"handle",hWnd);
SetFgWindow(hWnd);
if( (item =="") && ((version == NETSCAPE_40) || (version == NETSCAPE_45) ||
(version == NETSCAPE_404) || (version == IE_4) || (version == NS_61)) )
{
rc =list_get_items_count(list, count);
if(rc != E_OK)
return(rc);
# convert to zero base
count--;
count ="#"& count;
rc =list_deselect_range(list,"#0",count);
save_report_info(old_report_name);
return(rc);
}
if((version == NETSCAPE_40) || (version == NETSCAPE_45) || (version == NETSCAPE_404) )
{
if(list == BROWSER_COMBO_LOCATION_CLASS) ## let WinRunner play on browser_combo_location
{
rc =obj_get_info(list,"handle",hWnd);
rc = web_main_combo_get_item_num(list, hWnd, item, number);
if(rc == E_OK)
item ="#"& number;
}
else
{
if(match(item,"[ ]*#[0-9][0-9]*") !=1)
{
rc =list_get_item_num(list, item, number);
if(rc == E_OK)
item ="#"& number;
}
}
}
elseif(version == IE_4)
{
# GUI_map_get_desc (win, list, desc, dummy );
# if ((GUI_desc_get_attr(desc, MSW_CLASS, msw_class_attr) == E_OK)
if((obj_get_info(list,MSW_CLASS, msw_class_attr) == E_OK)
&& (msw_class_attr == BROWSER_COMBO_LOCATION_CLASS))
{
rc =obj_get_info(list,"handle",hWnd);
rc = web_main_combo_get_item_num(list, hWnd, item, number);
if(rc == E_OK)
{
item ="#"& number;
}
else
{
### we force theweb_main_combo to open so the list will be refresh.
### appearently a bug in the IE that cause the count to be 0 if list wasn't open at least once.
obj_get_info(list,"width",w);
obj_get_info(list,"height",h);
obj_mouse_click(list,w-5,h-5,LEFT);
rc = web_main_combo_get_item_num(list, hWnd, item, number);
if(rc == E_OK)
{
item ="#"& number;
}
收藏
举报
TAG:
WinRunner板块