打印本文 打印本文 关闭窗口 关闭窗口
自己编写树(Tree)的封装类
作者:武汉SEO闵涛  文章来源:敏韬网  点击数3615  更新时间:2009/4/23 18:34:19  文章录入:mintao  责任编辑:mintao

在VCL中包含有一个TList类,几乎可以实现<链表>所有功能,Delphi的工程师真是伟大。但是在实际应用中需要TTree类,来实现<树>的功能,我写了两个类TyuTree,TYuNode。可以方便实现,树创建,结点增删、移动功能。请大家指教。

代码实例:

Procedure Test();

Var

 YuTree: TyuTree;

  Node: TYuNode;

Begin  

  //第1步:创建树、增加第一个结点0

YuTree := TYuTree.Create;

Node := YuTree.Add(nil);//nil,表示增加根结点

Node.Data := Pointer(0);

 

 

 

 

//第2步:在结点0下增加子结点1

Node := YuTree.AddChild(Node);Node指向结点0

Node.Data := Pointer(1);

 

 

 

 

 

 

//第3步:在结点1下增加子结点2

Node := YuTree.AddChild(Node);

Node.Data := Pointer(2);

 

 

 

 

 

 

//第4步:切换到结点2的父结点1

Node := Node.GetParent;

 

 

 

 

[1] [2] [3] [4] [5] [6] [7] [8] [9]  下一页

打印本文 打印本文 关闭窗口 关闭窗口