Private Sub Form_Load()
    '将ImageList和TreeView绑定
    TreeView1.ImageList = ImageList1
    
    Dim ndd As node
    Dim db As clsDBconn
    Dim rsTemp As ADODB.Recordset
    Set db = New clsDBconn
    Dim key, text, constr, str, str1 As String
    Dim num, num1 As Integer
      
    constr = "select   *   from info"
    Set rsTemp = db.getDbResultSet(constr)
    TreeView1.LineStyle = tvwTreeLines
    TreeView1.Style = tvwTreelinesPlusMinusPictureText
      
    num = 0
    num1 = 0
      
    If rsTemp.RecordCount > 0 Then
       Do While rsTemp.EOF = False
          
          str = "root"
          str1 = "key"
          num = num + 1
          num1 = num1 + 1
          str = str & num
          str1 = str1 & num1          '读取出数据库中的制定字段的值做为根节点和对应的子节点
          key = Trim(rsTemp.Fields("id"))
          text = Trim(rsTemp.Fields("name"))          '把从数据库中读取出的字段的值加载到TreeView控件上去
          ‘必须要有这个str和str1,不然要出错,报无关键字或集合中值不唯一
          Set ndd = TreeView1.Nodes.Add(, , str, key, "Man")
          Set ndd = TreeView1.Nodes.Add(str, tvwChild, str1, text, "USER")
          rsTemp.MoveNext        Loop
    End If
    
    rsTemp.Close
    Set rsTemp = Nothing
End Sub
运用这个程序的确可以把数据库中的值读区出来,但是现在遇到一个新问题,就是我数据库中是三条记录,字段是id,name,值是:1,d  2,w  3,e,如果数据库中的id值不同的话,这个程序可以把值读出来,使其成为父节点,子节点,那么,我如果把字段的值改为1,d  1,w  3,e,就要出错,就是把id相同的记录的name写到同一个父节点下去,这个程序要怎么修改了!!!!?????谢谢