vb treeview 如何连接acc数据库中的一个字段啊
2个回答
展开全部
这个没法直接“连接”,需要你用代码读取数据,根据数据结构正确显示数据。
给你个代码参考,直接复制到VB里。代码使用 DAO,需要在“工程”-“引用”里先引用DAO,如果用的是 ADO,自行修改相关代码。
Private Function BuildTree() As Boolean
'地区列表树 AICode 长度6位数字(字符类型),第一位表示大区,2-3位表示省份,4-6表示城市
'华东地区 1
' 上海 101
' 浙江 102
' 杭州 102001
' 绍兴 102002
' 福建 103
'华北地区 2
' 北京 201
' 河北 203
Dim strCode As String
Dim daoDB As DAO.Database, daoRs As DAO.Recordset '这里要引用 DAO
Dim nodeRoot As Node, nodeTemp As Node
'打开数据库文件,根据实际情况修改
Set daoDB = OpenDatabase(App.Path & "\cust.mdb")
'打开记录集,根据实际情况修改
Set daoRs = daoDB.OpenRecordset("Select AICode, AIName, AINote from areainfo Order by AICode", dbOpenForwardOnly, dbReadOnly)
With tvwArea.Nodes
'清空列表
.Clear
Do Until daoRs.EOF
strCode = Trim(daoRs("AICode"))
Select Case Len(strCode)
Case 1
tvwArea.Nodes.Add , , "A" & strCode, daoRs("AIName") 'Treeview 的 Key 用于直接访问节点。不能是数字,前面要加一个字符
Case 3
Set nodeTemp = .Item("A" & Mid(strCode, 1, 1))
If nodeTemp Is Nothing Then Exit Do 'error
tvwArea.Nodes.Add nodeTemp, tvwChild, "A" & strCode, daoRs("AIName")
Case 6
Set nodeTemp = .Item("A" & Mid(strCode, 1, 3))
If nodeTemp Is Nothing Then Exit Do 'error
tvwArea.Nodes.Add nodeTemp, tvwChild, "A" & strCode, daoRs("AIName")
Case Else 'error
Exit Do
End Select
daoRs.MoveNext
Loop
daoRs.Close
daoDB.Close
End With
Set daoRs = Nothing
Set daoDB = Nothing
End Function
给你个代码参考,直接复制到VB里。代码使用 DAO,需要在“工程”-“引用”里先引用DAO,如果用的是 ADO,自行修改相关代码。
Private Function BuildTree() As Boolean
'地区列表树 AICode 长度6位数字(字符类型),第一位表示大区,2-3位表示省份,4-6表示城市
'华东地区 1
' 上海 101
' 浙江 102
' 杭州 102001
' 绍兴 102002
' 福建 103
'华北地区 2
' 北京 201
' 河北 203
Dim strCode As String
Dim daoDB As DAO.Database, daoRs As DAO.Recordset '这里要引用 DAO
Dim nodeRoot As Node, nodeTemp As Node
'打开数据库文件,根据实际情况修改
Set daoDB = OpenDatabase(App.Path & "\cust.mdb")
'打开记录集,根据实际情况修改
Set daoRs = daoDB.OpenRecordset("Select AICode, AIName, AINote from areainfo Order by AICode", dbOpenForwardOnly, dbReadOnly)
With tvwArea.Nodes
'清空列表
.Clear
Do Until daoRs.EOF
strCode = Trim(daoRs("AICode"))
Select Case Len(strCode)
Case 1
tvwArea.Nodes.Add , , "A" & strCode, daoRs("AIName") 'Treeview 的 Key 用于直接访问节点。不能是数字,前面要加一个字符
Case 3
Set nodeTemp = .Item("A" & Mid(strCode, 1, 1))
If nodeTemp Is Nothing Then Exit Do 'error
tvwArea.Nodes.Add nodeTemp, tvwChild, "A" & strCode, daoRs("AIName")
Case 6
Set nodeTemp = .Item("A" & Mid(strCode, 1, 3))
If nodeTemp Is Nothing Then Exit Do 'error
tvwArea.Nodes.Add nodeTemp, tvwChild, "A" & strCode, daoRs("AIName")
Case Else 'error
Exit Do
End Select
daoRs.MoveNext
Loop
daoRs.Close
daoDB.Close
End With
Set daoRs = Nothing
Set daoDB = Nothing
End Function
追问
朋友,能否给我个我这样的要求,例子啊
追答
抱歉,如果这么接近的例子还看不懂,没法帮到你了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询