Treeview 控件的简单应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Treeview 控件的简单应用:
在VB中Treeview 控件的添加:
通过VB菜单,[工程] -- [部件],然后勾选Microsoft Windows Common Controls 6.0 (SP6),[确定]。
在工具箱里就有了Treeview 控件的图标。
Treeview 控件具有显示类似目录层次结构的格式,在具体应用中很有实际意义。下面简单介绍。
一.在Treeview 控件中添加1个新节点:
在Treeview 控件中添加1个新节点,是通过Treeview 控件的Nodes 集合的Add方法添加一个Node 对象来实现的。
使用方法:
Dim nodX As Node
Set nodX = Treeview1.Nodes.Add(relative, relationship, key, text, image, selectedimage)
其中参数说明:
Relative:可选的。已存在的Node 对象的索引号或键值。新节点与已存在的节点间的关系,可在下一个参数relationship 中找到。可以这样理解relative的作用,是新节点的位置的参照对象。
Relationship:可选的。指定的Node 对象的相对位置,如设置值中所述。本参数是相对参数relative而言。
Key:可选的。唯一的字符串,可用于用Item 方法检索Node。
Text:必需的。在Node 中出现的字符串。
Image:可选的。在关联的ImageList 控件中的图像的索引。
Selectedimage:可选的。在关联的ImageList 控件中的图像的索引,在Node 被选中时显示。
以上参数image和selectedimage,是设置节点文字左边的图形,以后详细举例说明。
例1:
Set nodX = TreeView1.Nodes.Add(, , "R", "Root")
这是缺省了relative, relationship, image, selectedimage参数的实例,而key值用“R”,text 值用“Root”。
通常,缺省了relative, relationship的节点,是第1层节点。本例,生成了一个第1层节点,显示的文字为“Root”。
例2:
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C1", "Child 1")
nodX.EnsureVisible '这个方法EnsureVisible,使得新添加的子节点后,展开多层显示。
本例:relative为“R”,relationship为tvwChild,key为“C1”,text为“Child 1”
其功能是:建立1个新节点;该新节点是节点key值为“R”的子节点(tvwChild),而该新节点的key值用“C1”,text值用“Child 1”。
我们现在要为TreeView1控件添加新节点,可能有三种情况;
1)添加1个新的第1层节点。
Set nodX = TreeView1.Nodes.Add(, , "R1", "Root1")
2)在节点“Root”下,添加1个新的子节点(第2层)。
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C2", "Child 2")
3)在节点“Child 1”下,添加1个新的子节点(第3层)。
Set nodX = TreeView1.Nodes.Add("C1", tvwChild, "C1_1", "Child 1_1")
nodX.EnsureVisible '这个方法EnsureVisible,使得新添加的子节点后,展开多层显示。
下面解释参数relationship的tvwChild常量;
参数relationship表示,新添加的节点与参照节点relative之间的关系(是同级还是下一级)。
参数relationship可取值以及作用如下:
relationship 的设置值与含义见下表是:
常数值描述
tvwFirst 0 首的节点。该Node和在relative中被命名的节点位于同一层,并位于所有同层节点之
前。
tvwLast 1 最后的节点。该Node和在relative中被命名的节点位于同一层,并位于所有同层节点
之后。任何连续地添加的节点可能位于最后添加的节点之后tvwNext 2 缺省)下一个节点。该Node位于在relative中被命名的节点之后。
tvwPrevious 3 前一个节点。该Node位于在relative中被命名的节点之前。
tvwChild 4 缺省)子节点。该Node成为在relative中被命名的节点的子节点。并位于所有同层节
点之后
注意如果在relative 中没有被命名的Node 对象,则新节点被放在节点顶层(第1层)的最后位置。
可以知道,现在要实现情况1)添加1个新的第1层节点。
可以用:Set nodX = TreeView1.Nodes.Add("R", , "R1", "Root1")
或者用:Set nodX = TreeView1.Nodes.Add("R", tvwLast, "R1", "Root1")
现在要实现情况2)在节点“Root”下,添加1个新的子节点(第2层)。
可以用:Set nodX = TreeView1.Nodes.Add("C1", , "C2", "Child 2")
或者用:Set nodX = TreeView1.Nodes.Add("C1", tvwLast, "C2", "Child 2")
二.设置Treeview 控件的显示样式:
语句格式:TreeView1.Style = 常数|bumber
常数或number值的含义见下表:
常数 number值描述
tvwTextOnly 0 仅为文本
tvwPictureText 1 图像和文本
tvwPlusMinusText 2 +/- 号和文本。
tvwPlusPictureText 3 +/- 号,图像和文本。
tvwTreelinesText 4 直线和文本。
tvwTreelinesPictureText 5 直线,图像和文本。
tvwTreelinesPlusMinusText 6 直线,+/- 号和文本。