起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 280|回复: 4

【结贴】[问题]请问TOrgTreeView下如何遍历TBizNode节点?

[复制链接]
发表于 2009-12-15 16:52:56 | 显示全部楼层 |阅读模式
lNode: TBizNode;

    for i:=1 to OrgCmb.BizTreeView.BizTree.NodeCount-1 do
      lNode := TBizNode(OrgCmb.BizTreeView.BizTree.Nodes);
    for i:=1 to OrgCmb.BizTreeView.Nodes.Count-1 do
      lNode := TBizNode(OrgCmb.BizTreeView.Nodes.Objects);

都不行。
回复

使用道具 举报

发表于 2009-12-15 17:28:11 | 显示全部楼层
楼主说说为啥要遍历组织机构树?
遍历整个树需要把节点全部展开,才能进行遍历,这样效率很低。
如果要找到树中的某个节点可以使用:
BizTreeView1.BizTree.FindNodeByBizURL(lBizUrl); //通过一个BizUrl得到树节点
BizTreeView1.BizTree.FindNodeByFullFileName(lName);  //通过文件名得到节点

如果要取得所有的节点最好使用组织机构表达式来获取。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-16 09:18:24 | 显示全部楼层
说错了,应该是TOrgComboBox下。
需求是从另一个窗口调用包含TOrgComboBox窗体时,传过来一个部门名称(或部门ID)的参数,TOrgComboBox当前选项要求定位到此部门名称的节点上,这样以便作为其他默认部门操作的条件。
所以此时,并不知道BizURL或文件名,手上只有一个部门名称(或部门ID),如何做到?
回复 支持 反对

使用道具 举报

发表于 2009-12-16 09:32:13 | 显示全部楼层
仅仅名称不能定位的,因为显示名称不是唯一的,部门ID是可以的,
参考
http://bbs.justep.com/forum.php?mod=viewthread&tid=29824
或者
http://bbs.justep.com/forum.php?mod=viewthread&tid=29993

可以用“部门ID”在bbs上搜索
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-16 09:42:52 | 显示全部楼层
OK!多谢诸位了!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-13 05:49 , Processed in 0.039536 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表