51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5086|回复: 28
打印 上一主题 下一主题

[原创] 求助:怎样获取WinlistView中的对象呢?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-3-3 09:07:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
QTP将其识别为一个WinlistView对象。点击CEO或设计的区别只是点击的坐标的位置不同。有什么方法获取"CEO"或"设计"吗?让后我可以根据循环的次数确定其坐标,然后点击。大侠们,多多指教。。。

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

29#
 楼主| 发表于 2011-3-21 10:56:05 | 只看该作者
回复 28# shingo0109


    我的也是不行,只是我要处理的那个应用在用QTP录制时,可以使用select方法了,原来不可以,这样就可以使用select方法做判断了,而不用那么发杂了。。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    28#
    发表于 2011-3-10 17:20:48 | 只看该作者
    回复 27# 小新弦子


        额。。。。我的还是不行, 还是报未指定的错误
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27#
     楼主| 发表于 2011-3-10 16:41:16 | 只看该作者
    现在问题解决了。额啥也没动。现在winlistview的select,expand的方法都可以用了。搞不清啥原因,不过能实现我要的功能了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    26#
     楼主| 发表于 2011-3-7 13:06:34 | 只看该作者
    回复 25# liujinkui
    恩。哎。。。今天装了一堆补丁。。好像还是不行。。。。先放放吧。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    25#
    发表于 2011-3-7 09:17:48 | 只看该作者
    回复 24# 小新弦子


    有可能跟**版的关系,或是HP QTP10.0的一个BUG
    我今天在8.2上运行一点问题没有。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    24#
     楼主| 发表于 2011-3-4 14:01:23 | 只看该作者
    回复 21# june.diny

    Dialog("人员权限管理").WinObject("当前角色:_2").Click 110,10
            roleName=DataTable("角色", dtLocalSheet)
            arrRoleName = Split(roleName, "_")
    '        返回一个数组

    '    ReDim Columns(10)
            Set obj =dialog("人员权限管理").WinListView("所有角色列表")
         '获取列数
            cColumns = Obj.ColumnCount()
    '                将列名保存
            For iColumn = 0 To cColumns - 1
             Columns(iColumn) = Obj.GetColumnHeader(iColumn) 运行到这出错,下面的代码就运行不了了
            Next
    '                获取行数
            cItems = Obj.GetItemsCount
    '                对每一行获得其属性
    '   For iItems = 0 To cItems - 1
            For iColumn =0 To cColumns - 1
               str = Obj.GetSubItem(iItems ,Columns(iColumn))
               Msgbox str
              For i = 0 To UBound(arrRoleName)
                 If str=arrRoleName(i) Then
                Dialog("人员权限管理").WinButton(">").Click
                        End If
             Next
         Next
    这是代码。。就是仿着那个酷狗音乐盒那个写的。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    23#
     楼主| 发表于 2011-3-4 13:48:07 | 只看该作者
    回复 21# june.diny

    Sub GetSubItem_Example()

    With Dialog("Windows 任务管理器").WinListView("SysListView32")
         For i = 0 To 5
                 sSub = "映像名称"
                 sReport = sReport + .GetSubItem(i, "映像名称") & vbTab
                 sReport = sReport + .GetSubItem(i, "用户名") & vbTab
                 sReport = sReport + .GetSubItem(i, "会话 ID") & vbTab
                 sReport = sReport + .GetSubItem(i, "CPU") & vbTab
               
                 sReport = sReport + vbCr
                             msgbox sReport
        ItemName = .GetItem(i)

         msgbox ItemName
            Next



             sReport = sReport + .GetSubItem("QTPro.exe", 0) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 1) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 2) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 3) & vbTab
          
             sReport = sReport + vbCr
       
        End With
        Reporter.ReportEvent micDone, "Task Manager", sReport

    End Sub
    GetSubItem_Example()
    简体的任务管理器,运行时提示参数不正确。。咋回事。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    22#
     楼主| 发表于 2011-3-4 13:44:55 | 只看该作者
    回复 16# june.diny


        大虾是在英文下运行的,试下在简体运行吧,我运行失败。。提示。。

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-3-3 10:21
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    21#
    发表于 2011-3-4 13:23:58 | 只看该作者
    估计又是对象重构的问题,脚本贴出来看看呢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    20#
    发表于 2011-3-4 12:48:52 | 只看该作者
    回复 19# 小新弦子


    我也是报这个错误啊。。不知是啥原因
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2011-3-4 11:25:38 | 只看该作者
    回复 16# june.diny
    你知道为啥Columns(iColumn) = Obj.GetColumnHeader(iColumn) "老是报“未指定的错误”的原因吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    18#
    发表于 2011-3-3 23:31:52 | 只看该作者
    With Dialog("Windows Task").WinListView("SysListView32")
         For i = 0 To 5
                 sSub = "Image Name"
                 sReport = sReport + .GetSubItem(i, "Image Name") & vbTab
                 sReport = sReport + .GetSubItem(i, "PID") & vbTab
                 sReport = sReport + .GetSubItem(i, "CPU") & vbTab
                 sReport = sReport + .GetSubItem(i, "CPU Time") & vbTab
                 sReport = sReport + .GetSubItem(i, "Mem Usage")
                 sReport = sReport + vbCr
            Next

             sReport = sReport + .GetSubItem("QTPro.exe", 0) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 1) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 2) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 3) & vbTab
             sReport = sReport + .GetSubItem("QTPro.exe", 4)
             sReport = sReport + vbCr

        End With
        Reporter.ReportEvent micDone, "Task Manager", sReport

    End Sub
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-3-3 10:21
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    17#
    发表于 2011-3-3 17:53:57 | 只看该作者
    回复 15# shingo0109

    我试了下都可以的,要不你重启下试试
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-3-3 10:21
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    16#
    发表于 2011-3-3 17:45:28 | 只看该作者
    本帖最后由 june.diny 于 2011-3-3 17:55 编辑


    借楼上的话题,以任务管理器为例:
    ItemName = Dialog(..).WinListView(..).GetItem(2)

    ItemName 就是要获取的值

    注:GetItem括号里面的值是index,从0开始。。。

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    15#
    发表于 2011-3-3 17:28:50 | 只看该作者
    回复 13# june.diny


    我这边用任务管理器试了下你说的那些方法, 如GetItem, GetColumnHeader,GetSubItem, 为啥总是报错啊?
    但我用GetItemsCount和ColumnCount这2个是可以输出值的

    楼上知道原因么?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
     楼主| 发表于 2011-3-3 17:26:42 | 只看该作者
    回复 13# june.diny

    我知道,可是我不知道用哪个方法。。看帮助我对方法的具体作用还是不清楚。。不知道该怎么用,调了半天,还是不对。。关键是对方法的作用不清楚。。你要清楚地话帮忙想下吧。。就是通过winlistview的自身的方法实现对某一项text值的获取。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-3-3 10:21
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    13#
    发表于 2011-3-3 16:40:55 | 只看该作者
    查看HELP,winlistview对象有多种方法可用。
    按照你描述的,可以试下以Get开头的那几个方法:GetItem,GetItemProperty,GetSubItem等等。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    12#
    发表于 2011-3-3 16:20:37 | 只看该作者
    帮顶了, 等待高手答案~~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2011-3-3 15:23:44 | 只看该作者
    回复 9# shingo0109


        我也是。所以还是不知该怎么办??
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

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

    GMT+8, 2024-11-23 22:49 , Processed in 0.208761 second(s), 34 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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