遍历PB的TreeView的函数(转)

摘要:
Findtreeitem(tv_tree,表示搜索方法false-通过标签查找true-通过附加数据查找数据:return-1*/Long li_cnt,0Iftv_tree.GetItem(ll_hdl[li_cnt];

/*
由于PB的TreeView控件没有提供查找项的功能,因此本程序算是对此一缺憾的补缺。
调用语法:
findtreeitem(tv_tree, findby, data)
调用参数:
tv_tree: TreeView, 指明在tv_tree树中查找
findby: boolean, 指明查找方式
false - 按标签(Label)查找
true - 按附加数据(data)查找
data: any,    指明要查找的内容
返回值:long型。若找到,返回找到的项的Handle;
         若没有找到,返回0;
         若出错,返回-1
*/

Long   li_cnt, ll_hdl[]
TreeViewItem lt_tvi

li_cnt = 1
ll_hdl[1] = tv_tree.FindItem(RootTreeItem!, 0)
Do While li_cnt > 0
If tv_tree.GetItem(ll_hdl[li_cnt], lt_tvi) = -1 Then Return -1
If findby Then
   If lt_tvi.data = data Then
    Return ll_hdl[li_cnt]
   End If
Else
   If lt_tvi.label = String(data) Then
    Return ll_hdl[li_cnt]
   End If
End If
If lt_tvi.children Then
   li_cnt ++
   ll_hdl[li_cnt] = tv_tree.FindItem( ChildTreeItem!, ll_hdl[li_cnt - 1])
Else
   ll_hdl[li_cnt] = tv_tree.FindItem( NextTreeItem!, ll_hdl[li_cnt])
End If
Do While ll_hdl[li_cnt] <= 0
   li_cnt --
   If li_cnt = 0 Then Exit
   ll_hdl[li_cnt] = tv_tree.FindItem( NextTreeItem!, ll_hdl[li_cnt])
Loop
Loop
Return 0

免责声明:文章转载自《遍历PB的TreeView的函数(转)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇css如何画出类似原生的线条?pcm数据格式存储格式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

LibTorch实战六:C++版本YOLOV5.5(P6)的部署

一、更新理解  YOLOV5.5在这个版本,基本上和YOLOV4分道扬镳。YOLOV5.5(YOLOV5-P6)相对于5.4(YOLOV5-P5)区别:5.4是3个尺度 的输出层,即:P3, P4, P5 at strides 8, 16, 32, trained at --img 640,而yolov5.5是4个输出层P3, P4, P...

Python获取list中指定元素的索引

在平时开发过程中,经常遇到需要在数据中获取特定的元素的信息,如到达目的地最近的车站,橱窗里面最贵的物品等等。怎么办?看下面 方法一: 利用数组自身的特性 list.index(target), 其中a是你的目标list,target是你需要的下标对应的值 1 li = [10,8,9,26,72,6,28] 2 print(li.index(8)) 但是,...

按键消抖

按键消抖原因 使用机械弹性开关,当机械触点闭合/断开时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定的接通,在断开时也不会马上断开。而是会在闭合/断开的瞬间伴随一连串的抖动,为避免这种现象带来的问题,需要进行按键消抖。 硬件消抖 在按键个数较少时可以使用硬件方法消除抖动。下图所示为使用RS触发器进行硬件消抖,当按键未按下时,输出为0;当按键按...

css 实现 ul li 的显示与隐藏

本文从CSS角度来实现导航栏的显示与隐藏,用到了ul、li标签 html源代码: css文件: 有点小感悟:总是先设置默认情况:默认不显示或者默认黑色,然后再设置hover时的具体情况 li颜色变化比较简单:设置个全局颜色(默认颜色),然后li:hover设置hover时的颜色; li 显示比较复杂,因为涉及到自菜单显示情况:总是先设置下属所有子菜单全...

VC下动态库dll,静态库lib的编写和使用方法

在一些项目中,考虑到系统的安全性和稳定性,经常要封装一些DLL或者LIB库供别人使用,那么怎么制作DLL或者LIB文件呢?今天特酷吧根据自己的实际情况给大家讲解下基本的制作方法。以下是我亲自操作的记录:1,动态库dll的编写方法:新建一个动态链接库:填好工程名称即可选择工程类型,如果没有特别的要求,选择一个空工程即可。会看到这里和标准的控制台工程一样,没有任...

一个比较牛的加密算法

一个加密算法 据说此加密算法每次加密的结果都不同,但解密的结果相同 using System; namespace test001 {  /**    对sSource,进行加密、解密操作。    @param sSource String :操作的字符串    @param iFlag int :操作类型 1-加密  2-解密    @return St...