2017-06-08 30 views
1

我已经记录了一个脚本来从弹出的树形视图中点击一个XML文件(突出显示,右键单击并打开),弹出包含一些文件(不同的数量/类型,它们可以出现以任意顺序),一个我要一直始终选择与“AB”,开始文件名的NUMERICS将每次测试然而改变:UFT - 从TreeView中选择文件

SwfWindow("APPMAIN").SwfWindow("2000HOME").SwfTreeView("MainTreeList").SelectCell "AB99872","Object Name" 

SwfWindow("APP-MAIN").SwfToolbar("SwfToolbar").Select "Open" 

录像后,我运行脚本,但我得到的以下错误:

SelectCell :SelectCell :Cannot identify the specified item = AB99872 of the TreeView.

所以我的问题是2部分:

  1. 为何不能选择该文件AB99872使用SelectCell初始记录之后?

  2. 考虑到文件名会根据测试更改(即... AB *),自动执行此操作的最佳方法是足够强大以选择以'AB'开头的任何文件名。我曾尝试使用UI自动化/对象识别,并且使用了^ AB *等正则表达式,但UFT(v12.54)不断使用此方法崩溃。

回答

0

你可以用树的GetContent方法,然后使用正则表达式查找节点的名称来选择(然后SelectCell使用该值

+0

感谢,所以我尝试:MSGBOX SwfWindow(“APPMAIN “).SwfWindow(”2000HOME“)。SwfTreeView(”MainTreeList“).GetContent这将返回一个空白的msgbox弹出窗口,但是我尝试了GetVisibleText,但是它返回msgbox弹出窗口中当前窗口的所有文本,不知道这是否有帮助但我会做一些返工 – CodeSpy

+0

有了GetVisibleText数据,是否有一种方法可以用来搜索节点以查找匹配的数据,即文件名类似'^ AB *'.... ..谢谢 – CodeSpy

+0

@CodeSpy,我不熟悉'SwfTreeView'我只是看了文档,也许你可以使用'GetItem'或'GetItemProperty' – Motti