你数据库的表结构式如何设计的? 如果要多级显示的话,就要分父ID和子ID,这样就可以很方便的将数据库中的数据读到TREE中。 ID name parentID 1 公安派出所 0 2 治安民警 1 3 社区民警 1
Private Sub Form_Load() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql As String, i As Long pstr = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=警员工资管理系统;Data Source=." Combo1.AddItem "姓名" Combo1.AddItem "警号" Combo1.AddItem "民族" Combo1.AddItem "婚姻状况" Combo1.AddItem "政治面貌" Combo1.AddItem "学历类别" Combo1.AddItem "工作类型" Combo1.AddItem "工龄" Combo1.AddItem "工资卡号" Combo1.AddItem "职务" Combo1.AddItem "籍贯" Combo1.AddItem "养老保险卡号" Combo1.AddItem "医疗保险卡号" Skin1.ApplySkin Me.hWnd Dim nodX As Node Set nodX = TreeView1.Nodes.Add(, , "R", "公安派出所") cn.Open pstr sql = "select distinct 工作类型 from 警员人事信息" rs.Open sql, cn, adOpenStatic, adLockReadOnly For i = 1 To rs.RecordCount If Not IsNumeric(rs!工作类型) Then Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C" & CStr(i), rs!工作类型) End If rs.MoveNext Next rs.Close Set rs = Nothing cn.Close Set cn = Nothing nodX.EnsureVisible End Sub
再循环取值填充
'初始化treeview
TreeView1.HideSelection = True
TreeView1.Indentation = 19 * Screen.TwipsPerPixelX '缩进距离
TreeView1.LabelEdit = tvwManual
TreeView1.LineStyle = tvwRootLines
'---==以下设置节点==---
Dim Node1 As Node, Node2 As Node
'填充treeview
Set Node1 = TreeView1.Nodes.Add(, , , "公安派出所") '添加根节点
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, , "治安民警") '添加子节点
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, , "社区民警") '添加子节点
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, , "内勤民警") '添加子节点
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, , "巡逻民警") '添加子节点
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, , "网络民警") '添加子节点
Node1.Expanded = True '展开节点
End Sub
样式按钮?
TreeView?
还是数据逻辑?
1、数据库连接要知道
2、读取数据表中的数据,要了解
3、Treeview控件的操作要会,退一步,先不添加数据库中的数据,先手工添加一些测试数据,这个要会;以上3点都搞明白了,你的问题就该解决了。你这样问,谁知道你是哪不会?
天狼工作室 http://www.j2soft.cn/
如果要多级显示的话,就要分父ID和子ID,这样就可以很方便的将数据库中的数据读到TREE中。
ID name parentID
1 公安派出所 0
2 治安民警 1
3 社区民警 1
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sql As String, i As Long
pstr = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=警员工资管理系统;Data Source=."
Combo1.AddItem "姓名"
Combo1.AddItem "警号"
Combo1.AddItem "民族"
Combo1.AddItem "婚姻状况"
Combo1.AddItem "政治面貌"
Combo1.AddItem "学历类别"
Combo1.AddItem "工作类型"
Combo1.AddItem "工龄"
Combo1.AddItem "工资卡号"
Combo1.AddItem "职务"
Combo1.AddItem "籍贯"
Combo1.AddItem "养老保险卡号"
Combo1.AddItem "医疗保险卡号"
Skin1.ApplySkin Me.hWnd
Dim nodX As Node
Set nodX = TreeView1.Nodes.Add(, , "R", "公安派出所")
cn.Open pstr
sql = "select distinct 工作类型 from 警员人事信息"
rs.Open sql, cn, adOpenStatic, adLockReadOnly
For i = 1 To rs.RecordCount
If Not IsNumeric(rs!工作类型) Then
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C" & CStr(i), rs!工作类型)
End If
rs.MoveNext
Next
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
nodX.EnsureVisible
End Sub