[入门]树(treeview)控件制作导航的做法(三)

这次,主要是探讨下如何把数据库上的数据绑定到树上。
一般情况下,将树与数据库绑定才有实际的意义,这样树控件能动态地显示导航。
其实数据库绑定到树跟直接设置是一样的,都不复杂。只要是把数据库中取出来的数据用add 方法绑定即可
无论你是用ado,还是dao 都一样 ,主要是取出数据即可,这里不做详细介绍。
ado:rst.Open “sql”                                rst(字段)
dao:CurrentDb.OpenRecordset(sql)      rst1!字段

 

 

 

主要代码:

Dim Node1 As Node '定义变量

 

Dim rst, rst1 As DAO.Recordset

i = 1

'定义变量

s = "SELECT * FROM 客户 Where 客户ID>0 ORDER BY 客户ID"

Set rst = CurrentDb.OpenRecordset(s) '定义根的动态集,数据来自"客户"表

Do Until rst.EOF

 '设置第一级客户"

 Set Node1 = TreeView1.Nodes.Add(, , "客户" & rst!客户ID, Nz(Trim(rst!名称)), "K1", "K2")  '将客户表中的内容加入树型控件中

 s1 = "SELECT * FROM 销售合同 Where 客户=" & rst!客户ID

 Set rst1 = CurrentDb.OpenRecordset(s1) '定义一个树杈的动态集,数据来自"销售合同"表

 Do Until rst1.EOF

  '设置第二级"合同"

  Set Node1 = TreeView1.Nodes.Add("客户" & Mid(str(rst!客户ID), 2), tvwChild, "合同" & rst1!合同号, Nz(Trim(rst1!合同名称)), "K1", "K2")

 ' 将销售合同表中的内容加入树型控件中

  s2 = "SELECT 销售商品.合同号, 商品.商品名称 FROM 销售商品 INNER JOIN 商品 ON 销售商品.商品 = 商品.商品ID Where 销售商品.合同号='" & rst1!合同号 & "'"

  Set rst2 = CurrentDb.OpenRecordset(s2) '定义一个树枝的动态集,数据来自"销售商品和商品"表

  Do Until rst2.EOF

   '设置第三级"商品"

   Set Node1 = TreeView1.Nodes.Add("合同" & rst1!合同号, tvwChild, "商品" & str(i), Nz(Trim(rst2!商品名称)), "K1", "K2")

   '将销售商品和商品表中的内容加入树型控件中

   i = i + 1

   rst2.MoveNext

  Loop

 rst1.MoveNext

 Loop

 rst.MoveNext

Loop

转载于:https://www.cnblogs.com/officecn/p/3193830.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值