设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: fan0217
打印 上一主题 下一主题

[转帖][分享]TreeView控件使用教程

[复制链接]
14#
 楼主| 发表于 2006-4-14 21:35:00 | 只看该作者
14. FullPath 属性


这个属性返回在 TreeView 控件中引用的 Node 对象的完整限定路径。当赋予该属性为字符串变量时,该字符串被设为具有指定索引的 FullPath 节点。





语法


object.FullPath


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。





说明


完整限定路径是引用的 Node 对象的 Text 属性中的文本与它的所有前辈的 Text 属性值的连接。PathSeparator 属性的值确定定界符。





FullPath 属性示例


这个例子为 TreeView 控件添加几个 Node 对象,并在每个对象被选中时显示其完整限定路径。为试用此例,要在窗体上安放一个 TreeView 控件并在窗体的声明部分粘贴该代码。运行此例,然后选择一个节点,单击窗体显示该 Node 对象的完整路径。





Private Sub Form_Load()


   Dim nodX As Node


   Set nodX = TreeView1.Nodes.Add(,,,"Root")


   Set nodX = TreeView1.Nodes.Add(1,tvwChild,,"Dir1")


   Set nodX = TreeView1.Nodes.Add(2,tvwChild,,"Dir2")


   Set nodX = TreeView1.Nodes.Add(3,tvwChild,,"Dir3")


   Set nodX = TreeView1.Nodes.Add(4,tvwChild,,"Dir4")


   nodX.EnsureVisible   '显示全部节点。


   TreeView1.Style = tvwTreelinesText '样式 4。


End Sub


<FONT face="Tim
13#
 楼主| 发表于 2006-4-14 21:34:00 | 只看该作者
13. Next 属性(Node 对象)


这个属性返回对 TreeView 控件的 Node 对象的下一个相邻 Node 的引用。





语法


object.Next


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。





说明


Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 属性均返回对另一个 Node 对象的引用。所以可以同时引用并执行对一个 Node 的操作,如下所示:





With TreeView1.Nodes(x).Child


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为引用的 Node,如下:





Dim NodChild As Node


'获得对节点 x 的子节点的引用。


Set NodChild = TreeView1.Nodes(x).Child


'使用这个引用来执行对子节点的操作。


With nodChild


   .Text = "New text"   '改变文本。


   .Key = "New key"   '改变键。


   .SelectedImage = 3   '改变<
12#
 楼主| 发表于 2006-4-14 21:33:00 | 只看该作者
12. Previous 属性(Node 对象)      


返回对 Node 对象的前一个相邻节点的引用。





语法


object. Previous


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。





说明


Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 属性全部返回对另一个 Node 对象的引用,因此,可以同时引用并执行对 Node 的操作,如下所示:





With TreeView1.Nodes(x).Previous


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为引用的 Node,如下所示:





Dim NodPrevious As Node


'获得对节点 x 的前一个相邻节点的引用。


Set NodChild = TreeView1.Nodes(x).Previous


'用此引用执行对前一个相邻节点的操作。


With nodPrevious


   .Text = "New text"   '改变文本。


   .Key = "New key"   '改变键。


   .SelectedImage = 3   '改变<FONT face="Times New
11#
 楼主| 发表于 2006-4-14 21:33:00 | 只看该作者
11. LastSibling 属性(Node 对象)


这个属性返回对 TreeView 控件中的 Node 对象的最后相邻节点的引用。





语法


object.LastSibling


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。





说明


最后的相邻节点是出现在一个节点层中最后位置上的 Node。实际上哪个 Node 出现在最后位置上取决于在那一层上的 Node 是否被排序,这由 Sorted 属性所确定。为了排序同一层上的 Node 对象,应把 Parent 节点的 Sorted 属性设置为 True。请参阅下面的代码:





Private Sub TreeView1_NodeClick(ByVal Node As Node)


   Node.Parent.Sorted = True


End Sub





Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 属性均返回对另一个 Node 对象的引用。所以,可以同时引用并执行对一个 Node 的操作,如下所示:





With TreeView1.Nodes(x).LastSibling


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为引用的 Node,如下所示:


< 0cm 0cm 0pt;
10#
 楼主| 发表于 2006-4-14 21:32:00 | 只看该作者
10. FirstSibling 属性(Node 对象)


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





语法


object.FirstSibling


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象





说明


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





Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 属性都返回对另一个 Node 对象的引用。所以可以同时引用并执行对一个 Node 的操作,如下所示:





With TreeView1.Nodes(x).FirstSibling


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为引用的 Node,如下所示:





Dim NodFirstSib As Node


'获取 Node x 的第一个相邻节点的引用。


Set NodFirstSib = TreeView1.Nodes(x).FirstSibling


'使用这个引用执行对第一个相邻 Node 的操
9#
 楼主| 发表于 2006-4-14 21:32:00 | 只看该作者
9. Children 属性      


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





语法


object.Children


object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。





说明


在执行一个影响子节点的操作之前,可用 Children 属性检查 Node 对象是否有子节点。例如,以下代码在检索第一个 Node 的 Text 属性之前,使用 Child 属性检查子节点的存在。





Private Sub TreeView1_NodeClick(ByVal Node As Node)


   If Node.Children > 0 Then


      MsgBox Node.Child.Text


   End If


End Sub





Children 属性示例


这个例子在 TreeView 控件中放置几个 Node 对象。这组代码检查 Node 是否有子节点。如果有,则显示子节点的文本。为试用此例,在窗体上安放一个 TreeView 控件,并在窗体的声明部分中粘贴下面的代码。运行此例,单击 Node 对象以选择它,然后单击该窗体来察看 Node 对象的子节点的文本。





Option Explicit


Private Sub Form_Click()


   Dim strC As String


   Dim N As Integer


   If TreeView1.SelectedItem.Children > 0 Then '有子节点。


<o:p
8#
 楼主| 发表于 2006-4-14 21:31:00 | 只看该作者
Private Sub TreeView1_DragDrop(Source As Control, x As Single, y As Single)

   '如果用户没移动鼠标,或在无效区释放它。

   If TreeView1.DropHighlight Is Nothing Then

      indrag = False

      Exit Sub

   Else

      '设置被拖动的节点的 parent 属性为目标节点。

      On Error GoTo checkerror '阻止循环错误。

      Set nodX.Parent = TreeView1.DropHighlight

      Cls

      Print TreeView1.DropHighlight.Text & _

      " is parent of " & nodX.Text

      '释放 DropHighlight 引用。

      Set TreeView1.DropHighlight = Nothing

      indrag = False

      Exit Sub '如未发生错误则退出。

   End If



checkerror:

   '定义表示 Visual Basic 错误代码的常数。

   Const CircularError = 35614

   If Err.Number = CircularError Then

      Dim msg As String

      msg = "A node can't be made a child of its own children."

      '显示带有一个感叹号图标

      '和“确定”与“取消”按钮的消息框。

      If MsgBox(msg, vbExclamation & vbOKCancel) = vbOK Then

         '释放<FONT f
7#
 楼主| 发表于 2006-4-14 21:30:00 | 只看该作者
7. Parent 属性(Node 对象)      


这个属性返回或设置 Node 对象的父对象。仅在运行时可用。





语法


object.Parent[ = node]


Parent 属性的语法包含下面部分:





部分 描述


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


node 变成该对象的父对象的 Node 对象。





说明


在运行时,设置这个属性为一个对象的操作不能搞成一个循环,否则便发生错误。例如,不能将任何 Node 设置成为其后代的子 Node。





Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 属性都返回对另一个 Node 对象的引用。所以可以同时引用并执行对一个 Node 的操作,如下所示:





With TreeView1.Nodes(x).Parent


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为引用的 Node,如下所示:





Dim NodParent As Node
6#
 楼主| 发表于 2006-4-14 21:29:00 | 只看该作者
6. Root 属性(Node 对象)   


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





语法


object.Root


object 所在处代表是对象表达式,其值是“应用于”列表中的对象





说明


Child、FirstSibling、LastSibling、Previous、Parent、Next 和 Root 各属性全将返回对另一个 Node 对象的引用。因此,可以同时引用并执行对 Node 的操作,如下所示:





With TreeView1.Nodes(x).Root


   .Text = "New text"


   .Key = "New key"


   .SelectedImage = 3


End With





也可以将对象变量设置为被引用的 Node,如下所示:





Dim NodRoot As Node


'得到对节点 x 的根的引用。


Set NodRoot = TreeView1.Nodes(x).Root


'用此引用执行对根节点的操作。


With nodRoot


   .Text = "New text"   '改变文本。


   .Key = "New key"   '改变键。


   .SelectedImage = 3   '改变 SelectedIma
5#
 楼主| 发表于 2006-4-14 21:28:00 | 只看该作者
5. Add 方法(Nodes 集合)   


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





语法





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





Add 方法的语法包含下面部分:





描述


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


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


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


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


text 必需的。在 Node 中出现的字符串。


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


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





设置值


relationship 的设置值是:





常数 值 描述


<FONT face="Times New
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-17 17:46 , Processed in 0.119070 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表