CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  PowerBuilder >  控件与界面

是否是PB的treeview控件Bug?欢迎讨论!

楼主Lionwoo(光明勇士)2005-08-03 18:54:07 在 PowerBuilder / 控件与界面 提问

不知大家注意到没有,PB的treeview控件,在一开始给它InsertItem时,它每个节点的Handle都是顺序递增的,比如你在窗口打开时,给TreeView增加了50个节点,那么这批节点的Handle就是从1到50。但是!倘若你想刷新当前的TreeView,也就是先删除掉现有节点(for   until   ...   DeleteItem(0)   loop   )后再给它新增加30个节点,嘿嘿,问题来了:这30个节点的Handle并不是从1~30,而是从50~20!无论是否是增加根节点还是增加子节点,都有类似现象。  
   
  哈哈,想起什么了没?   对!就是一维不定界数组!这种分了多少就有多少却又不能减少的特性只有一维不定界数组才有,也就是说,PB的开发者图省事,在保存TreeView的节点数据时并没有真正用树形数据结构来存储,而是直接开了个一维不定界字符串数组来保存各节点的Label,   各个节点的Handle就是这个数组各个元素的下标。这样做了对他们来说当然简单方便,可就苦了我们了。难怪PB的TreeView用起来这么费劲,该有的基本方法如reset()、Filter()、AddRootNode()等等都没有,还得我们自己动手解决。唉~~    
   
  本来偶今天做了一个datawindowchild到TreeView的映射UO,一开始总以为每次刷新之后肯定都是从1开始,以为这样一映射了TreeView的Handle就对应了DDDW的行号,接着取DDDW的相应数据多方便啊。。。可惜折腾了一下午才搞明白不能这么做,还是得老老实实的把LABEL取出来,再到DDDW中去FIND一把。。。  
   
  以上是偶一点不成熟的看法,各位同仁有什么高见,都拿出来讨论讨论吧。偶现在用的是PB7,补丁打了一堆,倘不知PB8、9、10有没此类问题呢?  
   
  问题点数:20、回复次数:3Top

1 楼wu_07(一只狗不孤单,想一只狗才孤单)回复于 2005-08-04 09:05:29 得分 10

本来偶今天做了一个datawindowchild到TreeView的映射UO  
   
  如果要映射的话,最好和TreeViewItem的data属性关联,pb中treeview节点的Handle并不是节点的真正句柄,这个你用api取得节点的Handle就会发现,我也觉得奇怪,为什么不直接用这个句柄而用1.....n这个顺序数呢?看起来简单,其实一点用也没有.Top

2 楼Lionwoo(光明勇士)回复于 2005-08-04 11:28:30 得分 0

楼上的厉害啊,看到了事物的本质。请问大侠是用的是哪一个API函数取到的Handle呢?   能否简单指点说明一下~~Top

3 楼rightyeah(众妙之门)回复于 2005-08-05 08:13:21 得分 10

我觉得treeviewitem的handle是不是顺序数或者是不是ulong类型的数都无所谓。对于win   api来说handle就仅仅是个入口而已,使用handle的人根本不需要知道handle具体的值是什么,他只要知道用这个handle可以得到他希望的对象就够了。同样道理,在treeview中handle的目的也仅仅是唯一地标识每一个item,然后用户可以在不必知道handle值的情况下,得到handle指定得item。最后,我认为楼主不应该要求pb得设计者一定要把handle做成自然数序列,因为treeview得各个item完全可能被用户改变,删除,又或插入新的项目,就算一开始是有序的,经过多次改变之后,也就乱了。还有,就算是不变的树,生成的时候用的算法不一样,其序列也是不一样的。Top

相关问题

  • TREEVIEW控件
  • 求treeview控件
  • treeview控件
  • TreeView控件
  • 求TreeView控件
  • dtpicker控件bug
  • PB控件
  • TreeView控件问题
  • 关于treeview控件
  • 注册TreeView控件

关键词

  • 节点
  • pb
  • 映射
  • api
  • treeview
  • 数组
  • handle
  • dddw
  • 顺序
  • 定界

得分解答快速导航

  • 帖主:Lionwoo
  • wu_07
  • rightyeah

相关链接

  • PowerBuilder类图书
  • PowerBuilder类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo