3 5 treeview
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

3.5 TreeView 控件 PowerPoint PPT Presentation


  • 122 Views
  • Uploaded on
  • Presentation posted in: General

3.5 TreeView 控件. 3.5.1 TreeView 概述 3.5.2 TreeView 控件的属性 3.5.3 TreeView 控件的方法 3.5.4 TreeView 控件的事件 3.5.5 示例. 3.5.1 TreeView 概述. TreeView 控件可以用来显示具有层次结构的数据,例如组织树、索引项、磁盘中的文件和目录等。. 可能的用途 创建用户可以操作的组织树。 创建能够显示至少两层或更多层的数据库树 。. 3.5.2 TreeView 控件的属性.

Download Presentation

3.5 TreeView 控件

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


3 5 treeview

3.5 TreeView 控件

  • 3.5.1 TreeView概述

  • 3.5.2 TreeView控件的属性

  • 3.5.3 TreeView控件的方法

  • 3.5.4 TreeView控件的事件

  • 3.5.5 示例

欧美学院信息技术系


3 5 1 treeview

3.5.1 TreeView概述

  • TreeView 控件可以用来显示具有层次结构的数据,例如组织树、索引项、磁盘中的文件和目录等。

可能的用途

创建用户可以操作的组织树。

创建能够显示至少两层或更多层的数据库树。

欧美学院信息技术系


3 5 2 treeview

3.5.2 TreeView控件的属性

  • 1. Node 对象和 Nodes 集合(一)          

  • Node 对象是 TreeView 控件中的一项,它包含图像和文本。

  • Nodes 集合包含一个或多个 Node 对象。

  • 语法

  • treeview.Nodes

  • treeview.Nodes.Item(index)

欧美学院信息技术系


3 3 2 treeview

3.3.2 TreeView控件的属性

  • 1. Node 对象和 Nodes 集合(二)——说明

  • 节点可包含文本和图片。然而,要使用图片,必须用 ImageList 属性关联一个ImageList 控件。

  • 图片可以根据节点的状态而改变;例如,如果SelectedImage 属性设置为来自关联的ImageList 的图像,则被选中的节点可拥有与未选中的节点不同的图片。

欧美学院信息技术系


3 5 2 treeview node

3.5.2 TreeView控件的属性(之)node——对象的基本属性)

  • 1)Item、Index、key 和text属性(一)

  • Item属性利用位置或键返回集合对象的指定成员。

  • Index属性返回或设置数,它唯一指定集合中的对象。

  • Key属性返回或设置字符串,在集合中唯一的标识一个成员。

  • text属性返回或设置包含在对象中的文本

欧美学院信息技术系


3 5 2 treeview node1

3.5.2 TreeView控件的属性(之)—— node对象的基本属性

  • 1)Item、Index、key 、text属性(二)

  • 语法

  • object.Item( index )

  • Index:指定集合成员位置的表达式。

  • 例:某一节点的index为3,key为”dad”

  • TreeView1.Nodes.Item(“dad”).Text

  • =TreeView1.Nodes.Item(3).Text

  • =Treeview1.Nodes(3).text

  • =Treeview1.Nodes(“dad”).text

欧美学院信息技术系


3 5 2 treeview node2

3.5.2 TreeView控件的属性(之)—— node对象的基本属性

  • 2)Root返回对所选 Node 的根 Node对象的引用

  • 3)Parent属性返回或设置 Node 对象的父对象

  • 4)Child返回对 TreeView 控件中的 Node 对象的第一个子节点的引用。

  • WithTreeView1.Nodes(TreeView1.SelectedItem.Index).Child

  • .Text = "New text“

  • .Key = "New key"

  • .SelectedImage = 3

  • End With

欧美学院信息技术系


3 5 2 treeview node3

3.5.2 TreeView控件的属性(之)——node对象的基本属性

  • 5)Children 属性  这个属性返回包含在 Node 对象中的各子 Node 对象的个数。

  • 6)Next返回对 TreeView 控件的 Node 对象的同一层次上的下一个相邻 Node 的引用。

  • 7) Previous返回对 Node 对象的同一层次上的前一个相邻节点的引用。

欧美学院信息技术系


3 5 2 treeview node4

3.5.2 TreeView控件的属性——之node对象的基本属性

  • 8)FirstSibling属性返回对 TreeView 控件中的 Node 对象的第一个相邻对象的引用。

  • 说明

  • 第一个相邻节点是出现在一个节点层中第一个位置上的 Node。实际上到底是哪一个 Node 出现在第一个位置取决于在那一层上的 Node 对象是否被排序,这由 Sorted 属性确定。

  • 9)LastSibling属性返回对 TreeView 控件中的 Node 对象的最后相邻节点的引用。

欧美学院信息技术系


3 5 2 treeview node5

实例

若TreeView1.Nodes(10)指节点内容为“tom”的节点。思考:

MsgBoxTreeView1.Nodes(10).FirstSibling.Text

MsgBox TreeView1.Nodes(10).previous.Text

MsgBox TreeView1.Nodes(10).lastsibling.Text

MsgBox TreeView1.Nodes(10).next.Text

输出的内容?

3.5.2 TreeView控件的属性——之node对象的基本属性

Greg

Bobby

Jack

Jack

欧美学院信息技术系


3 5 2 treeview node6

3.5.2 TreeView控件的属性——之node对象的基本属性

  • 10)Sorted 属性    

  • 此值确定 Node 对象的子节点是否按字母顺序排列。

  • 此值确定 TreeView 控件的根层节点是否按字母顺序排列。

  • 语法

  • object.Sorted [ = boolean]boolean的设置值是:

  • True:Node 对象根据它们的 Text 属性按字母顺序排列。其 Text 属性由数字开始的 Node 对象也作为字符串排序,第一个数字确定在排序中的初始位置,后面的数字确定以后的排序。

  • False:Node 对象不排序。

返回

欧美学院信息技术系


3 5 2 treeview node7

3.5.2 TreeView控件的属性——之node对象的基本属性

  • 11)Expanded 属性     

  • 这个属性返回或设置一个值,该值确定在 TreeView 控件中的 Node 对象当前是被展开的还是被折叠的。

  • object.Expanded[= boolean]

  • True:该 Node 当前被展开。

  • False:该 Node 当前被折叠。

欧美学院信息技术系


3 5 2 treeview nodes node

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

  • 1.Add 方法(Nodes 集合)

  • 在 Treeview 控件的 Nodes 集合中添加一个 Node 对象。

  • object.Add(relative, relationship, key, text, image, selectedimage)

  • Relative:可选的。已存在的 Node 对象的索引号或键值。新节点与已存在的节点间的关系,可在下一个参数 relationship 中找到。

  • relationship 是可选的。它表示指定的 Node 对象的相对位置,如设置值中所述。

欧美学院信息技术系


3 5 treeview

relationship 的设置值是:

返回

欧美学院信息技术系


3 5 2 treeview nodes node1

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

  • 1.Add 方法(Nodes 集合)—(参数介绍二)

  • Key:可选的。唯一的字符串,可用于用 Item 方法检索 Node。

  • Text:必需的。在 Node 中出现的字符串。

  • image可选的。在关联的 ImageList 控件中的图像的索引。

  • selectedimage:可选的。在关联的 ImageList 控件中的图像的索引,在 Node 被选中时显示。

欧美学院信息技术系


3 5 2 treeview nodes node2

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

1.Add 方法(Nodes 集合)—(应用一)

添加节点的第一个方法是直接使用Add方法

例如,假设已存在三个节点,如果想将第四个节点放在第二个和第三个节点之间,则代码如下:

  • ‘假设第二个节点的 Key 值为“2 node”。 tvwMyTree.Nodes.Add "2 node", tvwNext

欧美学院信息技术系


3 5 2 treeview nodes node3

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

1.Add 方法(Nodes 集合)—(应用二)

添加节点的第二个方法是:声明 Node 类型的对象变量,然后使用带 Add 方法的 Set 语句。

该 Set 语句将该对象变量设置为新节点。然后就可以用该对象变量设置节点的属性,如下所示:

  • Dim nodX As Node

  • Set nodX = tvwMyTree.Nodes.Add("10 node", tvwChild)

  • nodX.Key = "11 node"

  • nodX.Text = "IEEE"

  • nodX.Image = "closed"

欧美学院信息技术系


3 5 2 treeview nodes node4

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

  • 2.Remove 方法    

  • 把一个节点从 nodes集合中删除。

  • 语法

  • object.Remove index

  • Index:必需的。表达式,指定集合成员的位置。

  • 例:treeview1.nodes. Remove 3

  • 如果是数值表达式,则 index 必须是介于 1 和集合 Count 属性值之间的数。

  • 如果是字符串表达式,则在将被引用的成员添加到集合时,index必须和 key 参数一致。

欧美学院信息技术系


3 5 2 treeview nodes node5

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

  • 3.Clear 方法

  • 删除nodes集合中的全部对象。

  • 语法

  • object.Clear

  • 例:treeview1.nodes.clear

  • 说明

  • 为了从集合中只删除一个对象,使用 Remove方法。

欧美学院信息技术系


3 5 2 treeview nodes node6

3.5.2 TreeView控件的属性(之)——nodes和node对象的方法

  • 4.EnsureVisible 方法 

  • 这个方法确保指定Node 对象是可视的。如果需要,这个方法可展开 Node 对象并滚动 TreeView 控件。

  • 语法

  • object.EnsureVisible

  • 例:treeview1.nodes(3).EnsureVisible

  • 返回值

  • True:如果 TreeView 控件必须扩展以显露该对象,该方法返回 True。

  • False:如果不需展开,该方法返回 False。

欧美学院信息技术系


3 5 2 treeview1

3.5.2 TreeView控件的属性

  • 2. SelectedItem 属性

  • 返回对所选 Node 对象的引用。

  • 说明

  • SelectedItem 属性返回对于一个对象的引用,该对象能

  • 用来在选定的对象上设置属性和调用方法。

  • Command1_Click() ‘如果所选对象不是根,则删除此

  • 节点。

  • If TreeView1.SelectedItem.Index <> 1 Then

  • Treeview1.Nodes.RemoveTreeView1.SelectedItem.Index End If

欧美学院信息技术系


3 5 2 treeview2

3.5.2 TreeView控件的属性

  • 3. 图形类型——Style 属性 

  • 返回或设置图形类型(图像、文本、+/- 号、直线)以及出现在 TreeView 控件中每一 Node 对象上的文本的类型。

  • 语法

  • object.Style [ = number]

  • object:对象表达式,其值是“应用于”列表中的一个对象。

  • Number:指定图形类型的整数,请参阅“设置值”中的描述。

欧美学院信息技术系


3 5 2 treeview3

3.5.2 TreeView控件的属性

  • number的设置值是:

说明:若 Style 属性设置为包含直线的值,则 LineStyle 属性就确定了直线的外观。如果 Style 属性设置为不含直线的值,则 LineStyle 属性将被忽略

欧美学院信息技术系


3 5 2 treeview4

3.5.2 TreeView控件的属性

  • 4.线样式——LineStyle 属性 

  • 返回或设置在 Node 对象之间显示的线的样式。

  • 语法

  • object.LineStyle [ = number]

  • Number:它指定线的样式,如设置值所示:

欧美学院信息技术系


3 5 2 treeview5

3.5.2 TreeView控件的属性

  • 5.ImageList 属性

  • 返回或设置与另一控件相关的 ImageList控件。

  • 语法

  • object.ImageList [= imagelist]

  • 6. 复选框——Checkboxes属性     

  • 返回或设置一个值,确定是否显示复选框。 object.Checkboxes [= boolean]

  • boolean设置如下:

  • False(缺省) 复选框不显示。

  • True复选框显示。

欧美学院信息技术系


3 5 2 treeview6

3.5.2 TreeView控件的属性

  • 7. 标签编辑——LabelEdit 属性(一)

  • 确定是否可以编辑在TreeView 控件中的 Node 对象的标签。

  • 语法

  • object.LabelEdit [ = integer]

  • Object:对象表达式,其值是“应用于”列表中的一个对象。

  • integer:整数,它确定 Node 或ListItem 对象的标签是否可以被编辑。 integer 的设置值见下表

欧美学院信息技术系


3 5 2 treeview7

3.5.2 TreeView控件的属性

7.标签编辑——LabelEdit 属性(二)

integer 的设置值是 :

欧美学院信息技术系


3 5 2 treeview8

3.5.2 TreeView控件的属性

  • 8.项目展开——SingleSel属性     

  • 返回或设置一个值,指定项目被选中时是否展开。

  • 语法

  • object.SingleSel [= boolean]

  • boolean设置如下:

  • False:(缺省)项目被选中时不展开。

  • True:项目被选中时展开。

欧美学院信息技术系


3 5 3 treeview

3.5.3 TreeView控件的方法

欧美学院信息技术系


3 5 4 treeview

3.5.4 TreeView控件的事件

  • 1. 单击节点——NodeClick 事件 

  • 在一个 Node 对象被单击时,这个事件便发生。

  • 语法

  • Private Sub object_NodeClick(ByVal node As Node)

  • Node:对被点取的 Node 对象的引用。

  • 说明

  • 在单击节点对象之外的 TreeView 控件的任何部位,标准的 Click 事件发生。当单击某个特定的 Node 对象时,NodeClick 事件发生;

欧美学院信息技术系


3 5 4 treeview1

3.5.4 TreeView控件的事件

  • 2. 折回——Collapse 事件(一)      

  • 在 TreeView 控件中的任何 Node 对象被折回时,这个事件便发生。

  • 语法

  • Private Sub object_Collapse(ByVal node As Node)

  • object:对象表达式,其值是“应用于”列表中的对象。

  • node:对被单击的 Node 对象的引用

欧美学院信息技术系


3 5 4 treeview2

3.5.4 TreeView控件的事件

  • 2. 折回——Collapse 事件(二)

  • Collapse 事件发生在标准的 Click 事件之前。

  • 折回一个 Node 有三种方法:

  • 其一,设置 Node 对象的 Expanded 属性为 False;

  • 其二,双击 Node 对象;

  • 其三,在 TreeView 控件的 Style 属性被设置为包括 +/- 号图像的样式的情况下,单击 +/- 号图像。所有这些方法都产生 Collapse 事件。

欧美学院信息技术系


3 5 4 treeview3

3.5.4 TreeView控件的事件

  • 2. 折回——Collapse 事件(三)

  • 这个事件传送对折回的 Node 对象的引用。该引用可使一个操作有效,如以下例子所示:

  • Private Sub TreeView1_Collapse(ByVal Node As Node)

  • If Node.Index = 1 Then

  • Node.Expanded = True ' Expand the node again.

  • End If

  • End Sub

欧美学院信息技术系


3 5 4 treeview4

3.5.4 TreeView控件的事件

  • 3. 展开——Expand 事件(一)   

  • 在 TreeView 控件中的 Node 对象扩展开时,也就是它的子节点变成可视时,这个事件便发生。

  • 语法

  • Private Sub object_Expand(ByVal node As Node)

  • Object:对象表达式,其值是“应用于”列表中的一个对象。

  • Node:对展开的 Node 对象的引用。

欧美学院信息技术系


3 5 4 treeview5

3.5.4 TreeView控件的事件

  • 3. 展开——Expand 事件(二)  

  • 说明

  • Expand 事件发生在 Click 和 DblClick 事件之后。

  • Expand 事件的产生有三种方式:

  • 其一,双击带有子节点的 Node 对象;

  • 其二,将 Node 对象的 Expanded 属性设置为 True;

  • 其三,单击 +/- 图像。

欧美学院信息技术系


3 3 4 treeview

3.3.4 TreeView控件的事件

  • 3. 展开——Expand 事件(三)

  • 使用 Expand 事件使一个对象有效,如以下例子所示:

  • Private Sub TreeView1_Expand(ByVal Node As Node)

  • If Node.Index <> 1 Then

  • Node.Expanded = False ‘阻止扩展。

  • End If

  • End Sub

欧美学院信息技术系


3 3 4 treeview1

3.3.4 TreeView控件的事件

  • 4. 选择节点—— NodeCheck 事件       

  • 如果 CheckBoxes 属性等于 True,那么当 Node 对象被选择或者取消选择时将发生此事件。

  • 语法

  • Event NodeCheck(ByVal Node As ComctlLib.Node)

  • Node:返回被选择的 Node对象的对象引用。

  • 说明

  • 当 Node对象的 Checked属性被设置为 True或 False时不会发生此事件。

欧美学院信息技术系


3 3 5

3.3.5 示例

  • 向TreeView控件中添加节点,并对控件的NodeCheck事件编程,使之实现智能选取。程序运行结果如下图。

欧美学院信息技术系


  • Login