PB TreeView 控件实现查找功能

原创 2016年06月01日 17:58:23
long ll_handle,ll_level,ll_handletree[]
int li_find
string ls_find
treeviewitem ltvi_1

SetPointer(hourglass!)
tv_1.setredraw(false)
ls_find = sle_find.text
if trim(ls_find) = '' then 
	Messagebox("提示","请先输入查询条件!")
	return 
end if 
li_find = 0
if il_handle > 0 then 
	ll_handle = il_handle + 1
else
	ll_handle = tv_1.finditem(RootTreeItem! ,0)
end if 

//tv_1.expandall(ll_handle) 
tv_1.expandItem(ll_handle)  
do while ll_handle > 0 
	tv_1.getitem(ll_handle,ltvi_1)
//	if ltvi_1.label = ls_find then
	if pos(ltvi_1.label,ls_find) > 0  then //支持模糊查询
		li_find = 1
		exit
	end if
	ll_handle = tv_1.finditem(NextVisibleTreeItem! ,ll_handle) 
//	tv_1.expandall(ll_handle) 
	tv_1.expandItem(ll_handle) 
loop

ll_level = 1

if ll_handle > 0 then
	ll_handletree[ll_level] = ll_handle
	ll_handle = tv_1.finditem(ParentTreeItem! ,ll_handle)
	do while ll_handle > 0
		ll_level ++
		ll_handletree[ll_level] = ll_handle
		ll_handle = tv_1.finditem(ParentTreeItem! ,ll_handle)
	loop 
end if

ll_handle = tv_1.finditem(RootTreeItem! ,0)

do while ll_handle > 0
	tv_1.CollapseItem(ll_handle)
	ll_handle = tv_1.finditem(NextTreeItem! ,ll_handle)
loop

do while ll_level > 0 and li_find = 1
	tv_1.expanditem(ll_handletree[ll_level])
	if ll_level = 1 then
		tv_1.selectitem(ll_handletree[ll_level])
		tv_1.setfocus()
		il_handle = ll_handletree[ll_level] //记录上次查询的节点
		exit
	else 
		ll_level -- 
	end if 
loop

tv_1.setredraw(true)
if li_find = 0 then 
	il_handle = 0
	ll_handle = tv_1.finditem(RootTreeItem! ,0)
	tv_1.expandall(ll_handle) 
	Messagebox("提示","找不到【" + ls_find+"】!")	
end if 

PB中TreeView控件使用技巧

PB中TreeView控件使用技巧 2007-01-28 00:09:20 分类: 数据库开发技术 PowerBuilder中的TreeView 控件为树状游览,类似于WIND...
  • tlammon
  • tlammon
  • 2016年03月01日 20:40
  • 1750

pb TreeView控件

pb TreeView控件 PowerBuilder中的TreeView 控件为树状游览,类似于WINDOWS的资源管理器,其特点是信息项呈树状层次结构,能更清晰地表现主、细目关系 ,操作非常方便。...
  • tlammon
  • tlammon
  • 2016年03月17日 19:47
  • 528

[PB] PB中读写文件通用的两个函数

PB中读写文件通用的两个函数1、文件读取 ://函数名:f_readfile //功能:读取文件//参数://  io_file:ref blob 大对象类型,存储读出的文件内容;//  is_fil...
  • xys_777
  • xys_777
  • 2010年08月04日 13:41
  • 7573

位图的读取,PNG转化为BMP

#include #include #include  unsigned char* LoadBMP(char* file){ FILE *fp = fopen(file,"rb"); if(!fp)...
  • favormm
  • favormm
  • 2009年07月06日 10:01
  • 2143

PB下使用TreeView控件实现多级分类检索

PowerBuilder中的TreeView控件为树状列表,其特点是信息项呈树状层次结构,且形式灵活,可展开也可回缩,使用鼠标进行控制,操作简便。因此在应用中,可将其与DataWindow配合,一个提...
  • tlammon
  • tlammon
  • 2016年03月23日 01:24
  • 768

PB6.5中TreeView控件使用技巧(转)

PB6.5中TreeView控件使用技巧(转) 2010-08-01 22:51:13| 分类: PB学习资料 | 标签:treeview 控件 |举报 |字号大中小 订阅 ...
  • tlammon
  • tlammon
  • 2015年01月31日 21:25
  • 333

PB控件属性之TreeView

TreeView 【其他】 ■TreeView控件可以以树型方式来组织项目,不仅显示直观、界面友好,而且项目的管理和操作更为方便,是当前比较流行的一个控件。 该控件的特点是在较小的空...

PB中TreeView控件使用技巧

PowerBuilder中的TreeView 控件为树状游览,类似于WINDOWS的资源管理器,其特点是信息项呈树状层次结构,能更清晰地表现主、细目关系 ,操作非常方便。在应用中可将其与DataWin...

c# winform TreeView控件中实现拖拽的功能

曾经做过一个Windows Form,需要在TreeView空间中实现拖拽的功能,首先我想介绍一下Windows Form中的TreeView控件:使用 Windows 窗体 TreeView 控件,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PB TreeView 控件实现查找功能
举报原因:
原因补充:

(最多只允许输入30个字)