怎样使用TREEVIEW控件
1个回答
展开全部
在进行VFP程序开发时,为了让我们的应用程序看起来更加专业高谈虚化,我们不可避免地要在设计过程中为程序添加一些专业的控件。工欲善其事必先利其器,在进行程序设计时对所用的控件必须有一个清晰的了解。本文要向大家介绍的就是TreeView控件。TreeView控件能够以一种树形目录的方式来显示各种资料,常见的TreeView控件使用的例子就是注册表编辑器和Windows的资源管理器,单击节点的+号,你可以展开该节点,同样你也可以关闭所展开的节点。如何在你的程序中加入TreeView控件?接下来以VFP为例,向大家介绍TreeView控件的使用方法。一、在表单中添加TreeView控件TreeView控件属于OLE控件。所以,在VFP中添加TreeView控件的方法是在表单中加入OLE容器控件,在出现了InsertObject标题之后,选择InsertControl,在ObjectType栏内选择MicrosoftTreeViewControl。之后,在表单上你就能看到TreeView控件了。二、在TreeView控件中加入节点往TreeView控件中加入节点是一项很关键的工作。使用TreeView控件中Node(节点)对象的Add方法,你便能够定制由TreeView控件显示的内容(节点内容)。Add的用法如下:Add(relative,relationship,key,text,image,selectedimage)各个参数的含义如下:Relative:参照节点的键值。往TreeView控件加入节点时,你能够决定所添加的节点与业已存在的节点之间的关系。relative参数的作用就是指明已存在的节点的名称(键值)。Relationship:指明欲加入的节点与业已存在的节点之间的关系。其可选值及具体含义如下:0:顶级节点,新添的节点放置在参照节点的最上面。1:末级节点,新添的节点放置在参照节点的最下面。2:次级节点,新添的节点紧跟参照节点。3:上级节点,新添的节点放在参照节点的上面。4:子节点,新添的节点为参照节点的子节点。需要说明的是,描述上述参数使用到的顶、末、次、上具体是指物理位置上的关系。并且,新添加的节点的存放位置与申明语句的先后位置无关。Key:新添加节点的键值(字符串类型),该键值必须是唯一的。Text:所添加节点的标题。Image和selectedimage:图像索引值。可选参数(N型),指明新添加的节点在选中与没选中时所显示的不同图像。通常,这些图像是存放在ImageList(用来存放图片的)控件中的。在TreeView控件中你可以设置该控件的ImageList值。三、对TreeView控件的常用操作
1.添加节点:添加节点的操作主要是由上面提到的Add函数完成的。由TreeView控件中每个被显示的目录项被称之为节点(Node),应该注意的是:在添加过程中,你操作的对象是节点,而非TreeView控件本身。所以你不能直接使用TreeView.add命令。2.删除节点:删除节点主要是使用Remove函数,该函数的用法如下:Nodes.Remove(Key),Key指明欲删除节点的键值。3.指明对TreeView控件事件响应程序:在设计好TreeView之后,指明对事件如何响应是必不可少的。通常,最常用的侍亮是针对Click、DblClick和NodeClick事件,在设计此类事件的响应程序时,很自然地要涉及到确认用户所选择的节点。上面提到了,在对TreeView进行操作时,实际上是在对Node对象进行操作。Node对象中实际上是与之有关的各种数据(如:节点的Key值、Text值、Image值等等)和函数的结合体。通过对Node对象进行存取操作,一切都变得那么容易了。四、实战演习上面说了那么多,还是亲自动动手吧。下面的例子可以让你对TreeView控件有更加清晰地认识。这些程序并不复杂,但却演示了TreeView控件的基本原理及常用的操作。1.在TreeView控件的Init事件中添加如下代码,这些语戚燃句能够让你了解TreeView控件中节点与节点之间的关系:this.nodes.add(,,TOP,参照目录项)this.nodes.add(TOP,0,TopOnTop,参数0:放在参照目录项的最上面)this.nodes.add(TOP,1,TOP1,参数1:放在参照目录项的最下面)this.nodes.add(TOP,2,TOP2,参数2:紧靠参照目录)this.nodes.add(TOP,3,TOP3,参数3:放在参照目录的上面)this.nodes.add(TOP,4,Child?of?TOP,参数4:参照目录的子目录)this.nodes.add(Child?of?TOP,4,GrandSon?of?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询