有一表结构如下
   Code  ParentCode Name
   A     NULL       生物
   AA    A          动物
   AB    A          植物
   AA1   AA         狗
   AA2   AA         猫
   AB1   AB         松树
   AB2   AB         柏树
来表示如下树形结构
   生物
     动物
        狗
        猫
     植物
        松 
        柏
当然,以上只是举例,层次可以任意多,MSHFlexGrid能否将其分层表示,如若不能的话,请各大虾推荐控件,不胜感谢!!

解决方案 »

  1.   

    Dim CN As New ADODB.Connection
        Dim Rs As New ADODB.Recordset
        
        CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=Report;User Id=sa;Password=sa;"
        CN.Open
        Rs.CursorLocation = adUseClient
        Rs.Open "select * from table1", CN, adOpenDynamic, adLockBatchOptimistic
        Rs.MoveFirst
        Do While Not Rs.EOF
            Select Case Len(Trim(Rs.Fields("lno")))
                Case 3
                    TreeView1.Nodes.Add , , "key" & Trim(Rs.Fields("lno")), Rs.Fields("lname")
                Case 5
                    TreeView1.Nodes.Add "key" & Left(Trim(Rs.Fields("lno")), 3), tvwChild, "key" & Trim(Rs.Fields("lno")), Rs.Fields("lname")
                Case 7
                    TreeView1.Nodes.Add "key" & Left(Trim(Rs.Fields("lno")), 5), tvwChild, "key" & Trim(Rs.Fields("lno")), Rs.Fields("lname")
           
            End Select
            Rs.MoveNext
        Loop
        Rs.Close
        CN.Close
        For I = 1 To TreeView1.Nodes.Count
            TreeView1.Nodes(I).Expanded = True
        Next
      

  2.   

    Treeview有点慢,有没有快一点的控件?