- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VB中treeview控件的使用方法
利用treeview控件可以获得驱动器下的所有目录和子目录,TreeView 控件最典型的使用就是Windows资源管理中显示文件夹列表的左边栏,现在我们就模仿它来做一个按树状结构显示指定盘符中所有文件夹的小程序。
一、准备知识:
1、了解 TreeView 控件的基本使用,掌握了如何添加树状结构的数据到TreeView 控件中,相关文章参看这里:入门——TreeView 控件的使用
2、了解 ImageList 控件的基本使用。
3、了解 System.IO 命名空间中的Directory 类的一些常用用法,下面我们先了解下本文要用到Directory类的成员GetDirectories:它用于获取指定目录中子目录的名称。如下代码所示,获取C:盘下的子目录:
Dim dirs As String() = Directory.GetDirectories(c:\)
其结果是我们点开C盘后看到的文件夹,如果要获取更深层次的文件夹列表,就要一个一个文件夹循环使用Directory.GetDirectories方法。
二、窗体布局
在窗体上拖放一个TreeView 控件,一个Button 按钮,一个ImageList 组件
在ImageList 组件中按顺序添加如下三个图标,图标大小设置为16*16:
图一:需要用到的图标
三:编写代码
首先,我们已经知道,要想获得树状结构的每个层次中的子文件夹,我们必须使用递归过程来完成,下面所示代码所执行的工作是:先把一个已经路径的文件夹添加到树状结构中,然后再遍历它的子文件夹:
添加文件夹
Public Sub AddDirectory(ByVal strFatherPath As String, ByVal strPath As String, ByVal nodeFather As TreeNode)
Dim i As Integer
Dim node As New TreeNode
先添加本目录,从文件夹路径分析出文件夹名称
node.Text = Strings.Replace(strPath, strFatherPath \, , , 1)
为单个节点指定节点未被选中时显示的图标
node.ImageIndex = 1
为单个节点指定节点被选中时显示的图标
node.SelectedImageIndex = 2
nodeFather.Nodes.Add(node)
Application.DoEvents()
Try
Dim str() As String = iDir.GetDirectories(strPath)
遍历该目录的子文件夹
For i = 0 To str.GetUpperBound(0)
AddDirectory(strPath, str(i), node)
Next
Catch ex As Exception
Debug.WriteLine(ex.Message)
End Try
node = Nothing
End Sub
然后在按钮的Click事件中添加代码,用于添加树状结构的顶层以及调用遍历子文件的递归过程,详细代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim node As New TreeNode
先把C盘添加到树中
TreeView1.Nodes.Clear()
node.ImageIndex = 0
node.Text = 本地磁盘 C:
node.SelectedImageIndex = -1
TreeView1.Nodes.Add(node)
Dim i As Integer
获取C:盘根目录下的文件夹
Dim str() As String = iDir.GetDirectories(C:\)
For i = 0 To str.GetUpperBound(0)
调用遍历过程
AddDirectory(C:, str(i), node)
Next
node = Nothing
End Sub
*****************************************
1、为树状浏览器控件添加节点和子节点
用ADD方法添加一个新节点到树状浏览器的NODES集合时,可以声明它是和已存在的节点所联系起来的。通常使用ADD方法,其语法如下:
Nodes.Add(relative,[relationship][,key][,text][,image][,selectedimage])
各个参数的意义如下:
您可能关注的文档
- 第一章 DES-3326SR有24个10100.doc
- 北大随机过程课件:第 3 讲 第 5 讲 更新过程.pdf
- 第七章 组成原理(试卷1).doc
- 焦炉煤气制氢新工艺要领.doc
- 兄弟连_马剑威_JAVA基础_101_IO之字节流资料.pdf
- 第十三章 计算机体系结构课后答案.doc
- 某企业宽带薪酬设计案例教材.doc
- 第八章 常用默认端口号.doc
- 第九章 电缆外径计算.pdf
- 第七章 铸件形成理论重要知识点.doc
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目二 任务七 天罡星辰诀.pptx
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目六 任务二十一 剑气纵横法.pptx
- 《智能采矿概论》课件 第6章-矿井安全与智能监控.pdf
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目二 任务六 神指夺魂法.pptx
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目六 任务二十 洞察先机诀.pptx
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目四 任务十三 审时度势法.pptx
- Illustrator实例教程(Illustrator 2022)(电子活页微课版)(第2版)课件 第4章 图像对象的组织.ppt
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目五 任务十八 流水潺潺式.pptx
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目一 任务二 神行百变术.pptx
- RPA财经数据分析与可视化——数智魔法师:财经数据世界的奇幻之旅 课件 项目一 任务三 股市侦探法.pptx
文档评论(0)