pb 树的遍历

wf_getchildrenhandle:

parm :long al_handle

returntype : (none)

 

long ll_handle,ll_childrenthandle,ll_upperbound,ll_nexthandle
treeviewitem ltvi_item

ll_upperbound = upperbound(ii_code)

//本节点
if ll_upperbound = 0 then
 ll_upperbound++
 ii_code[ll_upperbound] = al_handle
end if

ll_handle = al_handle

//查找子节点
ll_childrenthandle  = tv_1.finditem(childtreeitem!,ll_handle)

if ll_childrenthandle > 0 then
 ll_upperbound++
 
 ii_code[ll_upperbound] = ll_childrenthandle
 
 tv_1.getitem(ll_childrenthandle,ltvi_item)
 
 //遍历子节点的子节点
 wf_getchildrenhandle(ll_childrenthandle)
end if


//如果没有子节点


//最后一个节点的同级节点遍历,执行完后返回上一个父节点遍历同级节点...以此类推
if ihandle <> ll_handle then
 ll_nexthandle  = tv_1.finditem(NextTreeItem!,ll_handle)
 
 if ll_nexthandle > 0 then
  ll_upperbound++
  ii_code[ll_upperbound] = ll_nexthandle
 end if
 do while(ll_nexthandle > 0)
  ll_nexthandle  = tv_1.finditem(NextTreeItem!,ll_nexthandle)
  if ll_nexthandle > 0 then
   ll_upperbound++
   ii_code[ll_upperbound] = ll_nexthandle
  end if
 loop
end if

tv_1.getitem(ll_nexthandle,ltvi_item)

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值