51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2968|回复: 16
打印 上一主题 下一主题

显示在树型查看对象中隐藏的项目

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-3-7 11:01:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码如下:
     i=0;
    list_get_info("SysTreeView32","count",value);  
     while (i<=value)
     {
              list_get_info("SysTreeView32","count",value);
                   list_get_item("SysTreeView32",i,item);
                   list_expand_item ("SysTreeView32", item);
                   i++;
    }

在运行后,总是最后一条不能打开。显示
Object: "SysListView32"
Error: Item not found.

不知道是什么原因?请指点
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2005-3-7 11:56:47 | 只看该作者
WR认不了SysListView32
你检查一下正常的录制可以回放吗?
或者你的操作有错误才报这个错误!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2005-3-8 08:02:49 | 只看该作者
我写错了,应该是在运行后,显示
Object: "SysTreeView32"
Error: Item not found.

Wrneng 认识SysTreeView32这个控件。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2005-3-8 08:43:35 | 只看该作者
可能是这个原因:请大家帮我看看能不能解决

当前面的项目被打开后,由于文字长度的问题,在SysTreeView出现了滚动条。当运行到打开最后一条的语句时,由于滚动条的存在,把最后一条项目前面的那个“+”给遮住了。鼠标不能点到那个"+",所以不能打开。就报了Object: "SysTreeView32"
Error: Item not found.
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-3-8 08:45:21 | 只看该作者
解决的办法我想是不是把滚动条移动到最左边?但SysTreeView中的滚动条好象是自动出现并和SysTreeView是一体的。它是没有名字的。Wr不能识别的。怎么解决?请大家指点
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2005-3-8 08:52:48 | 只看该作者
还有就是这段代码好象也有问题。我是从TSL帮助的函数的例子中找到的,没做修改。
问题是:

   当运行到最后一条项目时,由于While(i<=value) ,此时i = value,仍能执行while中的语句,当执行到list_get_item("SysTreeView32",i,item);  就会往最后一条项目后面去找。此时肯定是找不到item的。一定会报
"SysTreeView32"
Error: Item not found.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2005-3-8 09:19:19 | 只看该作者
有些控件的滚动条是可以录的。你可以试试
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2005-3-8 09:35:07 | 只看该作者
我试过了,SysTreeView这个控件的滚动条无法录制
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2005-3-8 10:25:33 | 只看该作者
我测试过了,
他是执行到I=7<8时才出现错误的!就是展不开下一级
没有理由的.
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2005-3-8 10:27:32 | 只看该作者
i=0;
    list_get_info("SysTreeView32","count",value);  
     while (i<=value)
     {
             # list_get_info("SysTreeView32","count",value);(如果这个屏蔽掉就只打开一级)
                   list_get_item("SysTreeView32",i,item);
                   list_expand_item ("SysTreeView32", item);
                   i++;
    }
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2005-3-8 10:34:38 | 只看该作者
还有就是这段代码好象也有问题。我是从TSL帮助的函数的例子中找到的,没做修改。
问题是:

   当运行到最后一条项目时,由于While(i<=value) ,此时i = value,仍能执行while中的语句,当执行到list_get_item("SysTreeView32",i,item);  就会往最后一条项目后面去找。此时肯定是找不到item的。一定会报
"SysTreeView32"
Error: Item not found.

---------------------------------------------------------------------------------------------------
这一句是不能屏蔽掉的。屏蔽掉就只能打开第一级。

我把while(i< a)   a的值用总项目个数减1代替。这样才能把这一句屏蔽掉。这要求先把总项目个数自己数出来。  
这个问题就能解决了。
不知道谁还有没有更好的办法?
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2005-3-8 10:35:49 | 只看该作者
现在的问题是:
当前面的项目被打开后,由于文字长度的问题,在SysTreeView出现了滚动条。当运行到打开最后一条的语句时,由于滚动条的存在,把最后一条项目前面的那个“+”给遮住了。鼠标不能点到那个"+",所以不能打开。就报了Object: "SysTreeView32"
Error: Item not found.

SysTreeView这个控件的滚动条无法录制
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2005-3-8 10:44:27 | 只看该作者
把最后一条项目前面的那个“+”给遮住了。鼠标不能点到那个"+",所以不能打开。就报了Object: "SysTreeView32"
Error: Item not found.

我觉得应该不是这个!遮不遮住都不会有错!

                   list_get_info("SysTreeView32","count",value)---- 数一下总的有多少级项目
                   list_get_item("SysTreeView32",i,item); 存入读到的项目名
                   list_expand_item 然后展开,
到最后一步,如果你没有展开也应该不会出现那样的错误才对阿!
想不通!(是不是没有有展开就报错呢?)
回复 支持 反对

使用道具 举报

该用户从未签到

14#
 楼主| 发表于 2005-3-8 10:51:32 | 只看该作者
把最后一条项目前面的那个“+”给遮住了。鼠标不能点到那个"+",所以不能打开。就报了Object: "SysTreeView32"
Error: Item not found.
我觉得应该不是这个!遮不遮住都不会有错!

                   list_get_info("SysTreeView32","count",value)---- 数一下总的有多少级项目
                   list_get_item("SysTreeView32",i,item); 存入读到的项目名
                   list_expand_item 然后展开,
到最后一步,如果你没有展开也应该不会出现那样的错误才对阿!
想不通!(是不是没有有展开就报错呢?)

-------------------------------------------------------------------------------------------
把最后一条项目前面的那个“+”给遮住了。鼠标不能点到那个"+",所以不能打开。就报了Object: "SysTreeView32"
Error: Item not found.
我觉得应该不是这个!遮不遮住都不会有错!

我试过了,应该是这个原因。因为在运行时,鼠标回自动去点击这个“+”。如果遮住了,鼠标就找不到这个“+”。所以无法打开这个项目。
----------------------------------------------------------------------------


                   list_get_info("SysTreeView32","count",value)---- 数一下总的有多少级项目
                   list_get_item("SysTreeView32",i,item); 存入读到的项目名
                   list_expand_item 然后展开,——-————
前面的项目是没有问题的,当到最后一级项目时,由于下面没有项目,此时运行list_get_item("SysTreeView32",i,item); 找不到后面的项目,就会出现提示
回复 支持 反对

使用道具 举报

该用户从未签到

15#
 楼主| 发表于 2005-3-8 13:53:17 | 只看该作者
求救呀
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2005-3-8 15:28:43 | 只看该作者
i = 0 to i <= value,  and that counts value+1, maybe it's the problem
回复 支持 反对

使用道具 举报

该用户从未签到

17#
 楼主| 发表于 2005-3-8 15:53:38 | 只看该作者
那要怎么解决那?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-26 18:39 , Processed in 0.070538 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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