回 帖 发 新 帖 刷新版面

主题:TreeView控件的使用实例(问题是代码有误,运行不出!!!)


Private Function Exist(node As String) As Boolean

For i = 1 To TreeView1.Nodes.Count

    If TreeView1.SelectedItem.Children > 0 Then
    
        If node = TreeView1.Nodes(i).Text Then Exist = True
        
        End If
        
    Next i
    
End Function

Private Sub Form_Load()

Dim nodex As node

Cbo1.AddItem "北方大学"

Cbo1.AddItem "中文系"

Cbo1.AddItem "物理系"

Set nodex = TreeView1.Nodes.Add(, , "北方大学", "北方大学")

Set nodex = TreeView1.Nodes.Add("北方大学", tvwChild, "中文系", "中文系")

Set nodex = TreeView1.Nodes.Add("北方大学", tvwChild, "物理系", "物理系")

Set nodex = TreeView1.Nodes.Add("中文系", tvwChild, "中文一班", "中文一班")

Set nodex = TreeView1.Nodes.Add("中文系", tvwChild, "中文二班", "中文二班")

Set nodex = TreeView1.Nodes.Add("物理系", tvwChild, "物理一班", "物理一班")

Set nodex = TreeView1.Nodes.Add("物理系", tvwChild, "物理二班", "物理二班")

Call CmdExtr_Click

End Sub

Private Sub CmdAdd_Click()                 '添加新结点

    Dim child As String                        '存放子结点名

    Dim father As String                       '存放父结点名

    If Cbo1.Text = " " Then Exit Sub

         father = Cbo1.Text
    
         If Exist(Txt2.Text) = True Then
    
         MsgBox "您输入的班级已存在,请重新输入!", vbOKOnly, "提示"
    
   Else
   
   child = Txt2.Text
   
   Set nodex = TreeView1.Nodes.Add(father, tvwChild, child, child)
   
   Cbol.AddItem child
   
   End If
   
   Txt2.Text = " "
   
End Sub

Private Sub CmdExtr_Click()

    For i = 1 To TreeView1.Nodes.Count

        TreeView1.Nodes(i).Expanded = True                 '将所有结点展开
    
         Next i
    
End Sub

Private Sub CmdPac_Click()

    For i = 1 To TreeView1.Nodes.Count
    
        TreeView1.Nodes(i).Expanded = False            '将所有结点收起
        
        Next i
        
End Sub

Private Sub CmdRem_Click()

   If TreeView1.SelectedItem.Index <> 1 Then
   
        TreeView1.Nodes.Remove TreeView1.SelectedItem.Index   '删除选定的结点
        
        End If
        
End Sub

Private Sub Cmdquit_Click()

    Unload Me

End Sub

回复列表 (共3个回复)

沙发

Private Function Exist(node As String) As Boolean
做成函数,为了什么?参数node没有在里面使用,函数没有返回值!
别的看不懂

板凳

Cbol.AddItem child
改成Cbo1.addItem child

3 楼

第一段是定义一个过程,为了判断所要输的father结点或child结点是否已经存在,在结点添加那段需要调用。希望大虾们帮帮看看其他地方有哪里错了,或者不懂可以问。联系方式--QQ:453547687

我来回复

您尚未登录,请登录后再回复。点此登录或注册