急求

gotolwd 2003-11-14 04:34:39
我有一个表tree_id(编码),tree_name(名称),tree_parent(父级编码)
tree_parent="0"的是根节点,
例如根节点下的第一个子节点的编码就是"001",在往下是"00101"


请给我一个函数,来实现树的初始化,因为我自己写的都是在第一次
打开好使,再次打开的时候就可能只出现一个节点了。应该是我做的不对
...全文
54 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liujiaqiang 2003-11-18
  • 打赏
  • 举报
回复
workhand(我是醒着的)是应该可以的。
cxwsoftware 2003-11-18
  • 打赏
  • 举报
回复
同意楼上的workhand(我是醒着的.....)
TGWall 2003-11-16
  • 打赏
  • 举报
回复
用上面的方法应该可以达到目的了
qqjj7758 2003-11-15
  • 打赏
  • 举报
回复
哈哈
insert2003 2003-11-15
  • 打赏
  • 举报
回复
workhand(我是醒着的.....) 的可以
先试试
再不行

再来问吧
佣工7001 2003-11-14
  • 打赏
  • 举报
回复
迟到了
mittee 2003-11-14
  • 打赏
  • 举报
回复
你可以取编码"00101"中的第3个数作为 tv_1.Insertitemlast(Ll_parenthandle,Lt_tv)
里面的Ll_parenthandle,这样简单一些
klbt 2003-11-14
  • 打赏
  • 举报
回复
楼上思路可行,编码稍长了些。
workhand 2003-11-14
  • 打赏
  • 举报
回复
可以把数据retrieve到dw中,按编码排序,根据dw生成树

dw_2.setsort('code')
dw_2.sort()

//删除原有树

tv_1.setredraw(false)
Do Until tv_1.finditem(RootTreeItem!,0) = -1
Ll_tvi = tv_1.finditem(RootTreeItem!,0)
tv_1.DeleteItem(Ll_tvi)
Loop

For i = 1 To dw_2.rowcount()
Ll_find = 0
lev = dw_2.getitemnumber(i,'lev')
Ls_code = trim(dw_2.getitemstring(i,'code'))
Ls_name = trim(dw_2.getitemstring(i,'cshort')) + '(' + right(Ls_code,3) + ')'
IF dw_2.getitemnumber(i,'lev') = 1 Then
Lt_tv.data = Ls_code
Lt_tv.label = Ls_name
Lt_tv.pictureindex = 1
Lt_tv.Selectedpictureindex = 3
Ll_handle = tv_1.Insertitemlast(0,Lt_tv)
dw_2.setitem(i,'handle',Ll_handle)
Else
Lt_tv.data = Ls_code
Lt_tv.label = Ls_name
Lt_tv.pictureindex = 2
Lt_tv.Selectedpictureindex = 3
Select count(id) Into :Ll_find From Rs_RepCollRel_h Where lev = :lev + 1 And code like :Ls_code + '%';
If Ll_find > 0 Then
Lt_tv.children = True
Else
Lt_tv.children = False
End IF
Ls_parentcode = Left(Ls_code,(len(Ls_code) - 3))
Ll_find = dw_2.find('code ="'+ Ls_parentcode + '"',1,i)
Ll_parenthandle = dw_2.getitemnumber(Ll_find,'handle')
Ll_handle = tv_1.Insertitemlast(Ll_parenthandle,Lt_tv)
dw_2.setitem(i,'handle',Ll_handle)
End IF
Next
这是部分代码,参考一下吧

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧