TreeView详细用法

Treeview用于显示按照树形结构进行组织的数据。  
   
   Treeview控件中一个树形图由节点(TreeNode)和连接线组成。TtreeNode是TTreeview的基本组成单元。  
   一个树的节点又包含文本(Text)和数据(Data)。Text为String类,Data则为无定形指针(Untyped   Pointer),  
   可以指向一个与节点相联系的数据结构。  
      
   每一个节点下子节点形成这一节点的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.添加、删除、修改节点:  
   静态的方法可以在设计时通过Items的编辑器设置各节点的内容。  
  在添加和删除前必须保证有节点被选中(Treeview.Selected   =    nil)  
  用AddFirst,   AddFirstChild,    AddChild等先添加根节点,如Treeview.Items.AddFirst(   nil,   ‘Root‘);  
   然后以此为基础,添加此项的子节点。  
   
  删除节点  
  Treeview.Selected.Delete  
    
  编辑节点内容  
  Treeview.Selected.EditText  
   
  注意:由于根节点没有父节点    (TTreeNode.Parent=   nil)  
  此外,在大批量添加数据到Treeview中时最好使用  
     TreeView.Items.BeginUpdate;  
    添加节点  
    TreeView.Items.EndUpdate   
  这样能加快显示速度。  
   
  2.在节点上添加图象  
  Treeview中几个与图象相关的属性:   
    SelectedIndex:当节点被选中时在TimageList   中选什么样的图象  
     OverlayIndex:选那副图象作为掩图(一幅图象透明地显示在另一幅图象的前面),  
  比如一个节点不可用时加一副X图象在其前面。   
    ImageIndex:在常态时选用的图的序号  
    StateIndex:    在StateImages这个ImageList中对应的序号,-1时不显示图象  
     比较典型的,象在文件管理器中的所显示的一样,Treeview控件在节点之前也可以  
   显示图象。在Form中放置一ImageList控件,加入几个图片,分别被Index为0,1,…  
   在Treeview的Image属性项填入你所加入的ImageList的控件名称。TreeNode的ImageIndex  
   表示节点未被选中时(Selected=nil)的图片序号,SelectedIndex表示节点被选中时图片序号。  
   
   3.关于Level  
  Level的概念可以用下图表示:  
  Level0     Level1   Level2  
    
  4.排序  
  SortType决定什么时候进行排序;  
   TreeView.AlphaSort对节点进行排序,如果不能满足要求,你可以定义自己的CustomSort方法。  
   
   5.Drag&Drop操作,与标准的拖放操作使用方法一样

转载出处:http://www.cnblogs.com/Handll/archive/2009/07/27/1531946.html

时间: 2024-11-01 01:19:55

TreeView详细用法的相关文章

SplitContainer 控件详细用法(转)

1.可以将 Windows 窗体 SplitContainer 控件看作是一个复合体,它是由一个可移动的拆分条分隔的两个面板.当鼠标指针悬停在该拆分条上时,指针将相应地改变形状以显示该拆分条是可移动的.使用 SplitContainer 控件,可以创建复合的用户界面(通常,在一个面板中的选择决定了在另一个面板中显示哪些对象).这种排列对于显示和浏览信息非常有用.拥有两个面板使您可以聚合不同区域中的信息,并且用户可以轻松地使用拆分条(也称为"拆分器")调整面板的大小.另外,还可以嵌套多个

Display:Block 详细用法

根据CSS规范的规定,每一个网页元素都有一个display属性,用于确定该元素的类型,每一个元素都有默认的display属性值,比如div元素,它的默认display属性值为"block",成为"块级"元素(block-level):而span元素的默认display属性值为"inline",称为"行内"元素. 块级元素: 动占据一定矩形空间,可以通过设置高度.宽度.内外边距等属性,来调整的这个矩形的样子: 行内元素: 自己的

DOM Style样式对象的详细用法

DOM Style样式对象的详细用法 HTML Style样式比较复杂,相应访问.修改方法也有所差异.参考相关资料,整理如下. 典型Html文件如下,有三种定义方式. <head>     <style type="text/css">                /* 内部样式 */       h3 {color:green;}     </style>             <!-- 外部样式 style.css -->    

文件/目录权限设置命令chmod的详细用法

chmod是文件/目录权限设置的命令,在Linux中经常遇到,本博文以下总结chmod的详细用法. Linux/Unix的档案调用权限分为三级,即档案拥有者user.群组group.其他other.u表示该档案的拥有者,g表示与该档案的拥有者属于同一个群体(group)者,o表示其他以外的人,a表示这三者皆是. + 表示增加权限.- 表示取消权限.= 表示唯一设定权限. r表示可读取,w表示可写入,x表示可执行. 举例说明: (1).将档案file1.txt 设为所有人皆可读取: chmod u

mysql中游标在存储过程中的详细用法

昨天写的一个东东,分享下给大家. drop PROCEDURE  if exists sp_cleanUserData; CREATE  PROCEDURE `sp_cleanUserData`() BEGIN /*定义游标*/ declare v_dt bigint(20) default 0 ; declare v_num INT DEFAULT 0; /*游标循环到末尾时给定义的常量赋值*/ declare cur_userId   CURSOR FOR select  userId fr

Linux中find、grep命令详细用法

在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下: find命令 find命令的一般形式 find命令的常用选项及实例 find与xargs grep命令 grep命令的一般形式 grep正则表达式元字符集(基本集) grep命令的常用选项及实例 1.find命令 find命令是一个无处不在命令,是linux中最有用的命令之一.find命令用于:在一个目录(及子目录)中搜索文件,你可以

chmod和chown命令详细用法

Linux下数字表示文件的操作权限(777,755,..) Linux下,查看某路径下用(ls -l)查看所有文件的详细属性列表时,会看到文件的操作权限,类似"drwxr-xr-x"的字符串. 这串字符可以分成4段理解,结构为"d + 文件所有者操作权限 + 文件所有者所在组操作权限 + 其余人的操作权限": 1,第一段:例子中字母"d",表示文件所在目录 2,第二段:例子中字符串"rwx",表示文件所有者对此文件的操作权限

Java包(Package)的详细用法(转)

Java包(Package)的详细用法 http://wenwen.soso.com/z/q229375145.htm 当一个大型程序交由数个不同的程序人员开发时,用到相同的类名是很有可能的,那么如果发生了这样的事件我们该怎么办那?,在我们java程序开发中为了避免上述事件,提供了一个包的概念(package),那么既然有了这样一种方法能避免上述事件,那么我们怎样使用package那?,使用方法很简单我们只需要在我们写的程序第一行使用package关键字来声明一个包就行了,例如我们来声明一个名为

AWK详细用法

awk非常的优秀,运行效率高,而且代码简单,对格式化的文本处理能力超强.基本上grep和sed能干的活awk全部都能干,而且干得更好. 先来一个很爽的例子:文件a,统计文件a的第一列中是浮点数的行的浮点数的平均值.用awk来实现只需要一句话就可以搞定(当然,这个东东用python也可以很轻松的实现,只是无论如何都得新建一个文件:别妄想用bash shell来做,那可是浮点数!!!)$cat a1.021 331#.ll   442.53 6ss    7awk 'BEGIN{total = 0;