【VBA】树控件TreeView的学习(二)
哈喽,手机边亲爱的你还好吗?我是默默给大家分享Access知识的will。
上一篇文章我们简单讲了一下TreeView怎么
加载显示数据,TreeView上显示的数据都是手工添加的,那今天我们要来讲一下怎么把表中数据显示在TteeView上。
我们来回顾一下TreeView的代码,我们看其中一段代码
With tree_Test.Nodes
.Add , , "K", "根节点" '添加根节点
.Add "K", tvwChild, "K1", "子节点1" '添加一级节点
.Add "K", tvwChild, "K2", "子节点2" '添加一级节点
.Add "K1", tvwChild, "K11", "孙节点11" '添加二级节点
.Add "K1", tvwChild, "K12", "孙节点12"
.Add "K1", tvwChild, "K13", "孙节点13"
.Add "K2", tvwChild, "K21", "孙节点21"
End With
这里的我们可以看到,如果要把数据挂在树上的话,需求知道某个节点的上一级是什么。第一级的上一级是根目录,第二级的上一级是第一级,第三级的上一级是第二级……以此类推,按照这样的循环,我们需要先来建一张表,具体的我们来按步骤来操作。
PART1、建表
我们先建这样一张表,ProductID是产品编号(树的键值),这个是唯一的,ProductName是产品名称,ProductParentID是上级键值,可以重复。
然后,我们可以手工添加一些数据
PART2、添加控件
接下去,添加一下树控件,控件的名称改成TreeView0
PART3、添加代码
最后就是添加一下代码,同样的我们在窗体的加载事件里添加一下代码
我们可以看到代码与上一篇讲的多了一步,对表记录的循环,循环的同时将数据显示在树上
Private Sub Form_Load()
Dim strSQL As String
Dim rst As Object
Dim treeNode As Object
Dim parentKey As String
Me.TreeView0.Nodes.Clear '清空所有节点
Set treeNode = Me.TreeView0.Nodes.Add(, , "K", "根节点(树控件第二课)") '创建根节点
strSQL = "SELECT * FROM tblProduct ORDER BY ProductID"
Set rst = CurrentDb.OpenRecordset(strSQL) '打开表记录
Do Until rst.EOF
parentKey = "K" & rst!ProductParentID '上级键值
Me.TreeView0.Nodes.Add parentKey, tvwChild, "K" & rst!ProductID, rst!ProductName '添加树节点
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
' treeNode.Expanded = True
For Each treeNode In Me.TreeView0.Nodes '展开树节点
treeNode.Expanded = True
Next
End Sub
PART4、运行测试
最后一步就是运行测试一下,看一下效果。
文字内容的分享就到这里,后面会做个视频给大家详细讲解一下。
END
从事access开发多年,喜欢access做一些小东西,分享一些小经验
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?