首页后端开发ASP.NETvb点虐目录树代码 vb打开目录

vb点虐目录树代码 vb打开目录

时间2023-04-21 20:27:01发布访客分类ASP.NET浏览786
导读:vb点虐从数据库读取信息填充treeview做成层次目录怎么做 给明并你一段我曾经写的代码,主要是生成TreeView的节点!有什么不懂的地方你就提衫激! Public Sub InitializeTreeView(ByVal str...

vb点虐从数据库读取信息填充treeview做成层次目录怎么做

给明并你一段我曾经写的代码,主要是生成TreeView的节点!有什么不懂的地方你就提衫激!

Public Sub InitializeTreeView(ByVal strvXL As TreeView, ByVal vrsRecordTwo As DataSet)

Dim treBaseNodeOne As TreeNode

Dim treBaseNodeTwo As TreeNode

Dim strDWDM As String

m_rsRecordTwo = g_clsSybase.SelectSC_PD_SBCSB1()

'或槐袜查找供电局信息

g_clsSybase.SelectRS_ZZJG_ZZJGDMB(m_rsRecordOne)

'添加根节点

Do While m_rsRecordOne.Read

strDWDM = m_rsRecordOne.GetString(0) '获取单位代码

treBaseNodeOne = New TreeNode

treBaseNodeOne.Text = m_rsRecordOne.GetString(1).Trim() '获取单位名称

treBaseNodeOne.Name = m_rsRecordOne.GetString(1)

treBaseNodeOne.Tag = ""

strvXL.Nodes.Add(treBaseNodeOne)

'添加树结构第二层

Dim drsTwo() As DataRow

drsTwo = m_rsRecordTwo.Tables(0).Select("SSDW='" strDWDM "' and SC__XLBM is null")

For Each dr As DataRow In drsTwo

treBaseNodeTwo = New TreeNode

treBaseNodeTwo.Text = dr.Item("XLMC").ToString.Trim

treBaseNodeTwo.Name = dr.Item("XLMC")

treBaseNodeTwo.Tag = dr.Item("XLBM")

treBaseNodeOne.Nodes.Add(treBaseNodeTwo)

Next

Loop

m_rsRecordOne.Close()

End Sub

vb点虐 磁盘文件列表,界面如图,在点虐下如何实现?

预先准备三个图标文件,用于树型控件中显示磁盘符号和文件夹的图像之用。

1、窗体上添加控件如下:

组合框控件 ComboBox1,树型控件 TreeView1,列表框控件 ListBox1,图像列表控件 ImageList1。

选中TreeView1,设置其ImageList属性为ImageList1。

2、设置属性

选中图像列表控件 ImageList1,在属性窗口里,选中属性Images,单击三个小点按钮,出现图像集合编辑器窗口,单击[添加按钮],一一把准备好的图标文件进行添加,注意先后次序,如果不符合要求可以通过上下移动按钮重新改变次序。完成后单击[确定]。

运行图如下:

完整代码如下:

Imports System.IO

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        '添加系统所有磁盘目录符号

        For Each MyDrive As String In Environment.GetLogicalDrives()

            ComboBox1.Items.Add(MyDrive)

        Next

        '显示第一个磁盘符号

        ComboBox1.Text = ComboBox1.Items(0)

    End Sub

    '递归过程添加目录树

    Public Sub AddDirectory(ByVal strFatherPath As String, ByVal strPath As String, ByVal nodeFather As TreeNode)

        Dim i As Integer

        Dim Mynode As New TreeNode

        '先添加本目录

        Mynode.Text = Strings.Replace(strPath, strFatherPath  "\", "", , 1)

        '为节点指定未被选中时显示的图标

        Mynode.ImageIndex = 1

        '为节点指定被选中时显示的图标

        Mynode.SelectedImageIndex = 2

        nodeFather.Nodes.Add(Mynode)

        Application.DoEvents()

        Try

            Dim str() As String = Directory.GetDirectories(strPath)

            '递归遍历该目录的子文件夹

            For i = 0 To str.GetUpperBound(0)

                AddDirectory(strPath, str(i), Mynode)

            Next

        Catch ex As Exception

            Debug.WriteLine(ex.Message)

        End Try

        Mynode = Nothing

    End Sub

    '根据给出的盘符添加目录树

    Private Sub AddRootDirectory(ByVal DiscSymbol As String)

        Dim Nynode As New TreeNode

        '先把磁盘盘符添加到树中

        TreeView1.Nodes.Clear()

        Nynode.ImageIndex = 0

        Nynode.Text = DiscSymbol

        Nynode.SelectedImageIndex = -1

        TreeView1.Nodes.Add(Nynode)

        Dim i As Integer

        '获取磁盘根目录下的文件夹

        Dim str() As String = Directory.GetDirectories(DiscSymbol  "\")

   亏槐档 明陪    For i = 0 To str.GetUpperBound(0)

            '调用递归过程遍历该文件夹里的所有子文件夹,并添加到树型控件

            AddDirectory(DiscSymbol, str(i), Nynode)

        Next

  销乱      Nynode = Nothing

    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

        '根据磁盘符号的变更,显示根目录里的文件

        ListBox1.Items.Clear()

        For Each MyFile As String In System.IO.Directory.GetFiles(ComboBox1.Text)

            ListBox1.Items.Add(MyFile)

        Next

        '根据磁盘符号的变更,重新显示目录树

        Dim DiscSymbol As String

        DiscSymbol = Microsoft.VisualBasic.Left(ComboBox1.Text, Len(ComboBox1.Text) - 1)

        Call AddRootDirectory(DiscSymbol)

    End Sub

    '递归过程根据子目录寻找上级目录名--从而构成完整的目录路径

    Private Sub AllPath(ByVal ThisNode As TreeNode, ByRef MyPathName As String)

        If ThisNode.Level  1 Then

            '该节点层数大于1,其父节点不是磁盘根目录

            MyPathName = ThisNode.Parent.Text  "\"  MyPathName

            Dim MyNode As TreeNode = ThisNode.Parent

            Call AllPath(MyNode, MyPathName)

        Else

            '该节点层数等于1,其父节点就是磁盘根目录

            MyPathName = ComboBox1.Text  MyPathName

        End If

    End Sub

    Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect

        '为了搜索选中的节点对应目录的文件,需要组成全路径

        Dim MyAllPathName As String = TreeView1.SelectedNode.Text

        Dim MyNode As TreeNode = TreeView1.SelectedNode

        If TreeView1.SelectedNode.Level = 0 Then

            '如果选中的是根节点

            MyAllPathName = ComboBox1.Text

        Else

            '如果选中的是非根节点,调用递归过程组成全路径

            Call AllPath(MyNode, MyAllPathName)

            MyAllPathName = MyAllPathName  "\"

        End If

        '根据路径,搜索文件名并显示

        ListBox1.Items.Clear()

        For Each MyFile As String In System.IO.Directory.GetFiles(MyAllPathName)

            ListBox1.Items.Add(MyFile)

        Next

    End Sub

End Class

vb6.0里怎么使用TREEVIEW目录树?

'设置 Treeview 控件属性。

TreeView1.LineStyle = tvwRootLines ' Linestyle 1

'添加 Node 对象。

Dim nodX As Node '声明 Node 变搏宏含量。

'基笑带有文绝纤本 'Root' 的第一个节点。

Set nodX = TreeView1.Nodes.Add(, , "r", "班级名称")

'下一个节点是节点 1 ("Root") 的子节点。

Call TreeView1.Nodes.Add("r", tvwChild, "class2007", "2007级")

Call TreeView1.Nodes.Add("r", tvwChild, "class2008", "2008级")

Call TreeView1.Nodes.Add("r", tvwChild, "class2009", "2009级")

关于VB的目录树

Add(MyNod.Index, tvwChild....

第一个参数.

Add 方法拦毕租码如下简型芹:

Add(index, relationShip, key, text$)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: vb点虐目录树代码 vb打开目录
本文地址: https://pptw.com/jishu/4684.html
vb点虐结构体传递 vbnet窗体数据如何交互 vb点虐程序加载过程 vbnet using

游客 回复需填写必要信息