treeview如何调整节点的顺序?

marlboroywp 2005-03-21 05:45:14
如题
--1
--2
--3
怎么用代码把2调到上面
变成
--2
--1
--3
...全文
214 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
何鲁青 2005-03-22
  • 打赏
  • 举报
回复
jinjazz(近身剪(N-P攻略)) 的方法好象只能一个一个的往上或者往下移动阿!
adrom 2005-03-22
  • 打赏
  • 举报
回复
如果楼主要大量的结点要排序也不妨对数据先排序后再在treeview上绘制
pilicat 2005-03-21
  • 打赏
  • 举报
回复
严重同意楼上兄弟的!

BTW,楼上的兄弟真是强啊!汗颜中,请勿打扰!
jinjazz 2005-03-21
  • 打赏
  • 举报
回复
procedure MoveDownNode(Node:TTreeNode);
var T:Ttreenode;
begin
If Node=nil then exit;
T:=Node.getNextSibling;
if T=nil then exit;
if T.getNextSibling=nil then Node.MoveTo(T,naAdd)
else
Node.MoveTo(T.getNextSibling,naInsert);
end;
procedure MoveUpNode(Node:TTreeNode);
var T:Ttreenode;
begin
If Node=nil then exit;
T:=Node.getPrevSibling;
if T=nil then exit;
Node.MoveTo(T,naInsert);
end;

delphi中Treeview的使用介绍   每一个节点下子节点形成这一节点的Items属性,当前节点有一个唯一的Index(TreeNode的Index属性),用于说明子节点 在Items中的位置,每一个节点下的子节点顺序编号的,第一个是0,第二个是1,依次类推。用IndexOf方法获得子节点顺序,绝对顺序 (AbsoluteIndex)则是指从Treeview第一个项开始的顺序值,第一个是0,如此推下去。Item属性则根据Index的值返回当前节点 的第Index个子节点。Count则表明属于此项的所有子节点的数量。用MoveTo方法将Item由一个位置移到另一个位置。    Expanded属性表明是否所有的子项都全部展开(包括子项的子项),为True表示全部展开。IsVisible属性表明一个项是否在树中能被看到, 如果树全部展开那么这个Item是肯定可以被看到。HasChildren属性表明一个项是否有子项。 GetFirstChild, GetLastChild, GetPrevChild, and GetNextChild分别返回当前项子项的第一个、最后一个和前一个、后一个项。GetNextSibling and GetPrevSibling则返回在同一Level下的下一个和上一个项。GetNextVisible and GetPrevVisible则返回能看得到的下一个和上一个项。如果一个节点有Parent,则HasAsParent方法返回True. Parent为当前项的父项。Focused属性确定焦点是否落在此节点上,被Focus时会一个标准的方框围住。很显然,只有一个节点会被聚焦。 Selected属性表明一个节点是否被选中,同样只有一个节点会被选中。DropTarget属性表明节点在拖动操作中是源还是目标。 .1.添加、删除、修改节点

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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