📄 frmselectsavepath.vb
字号:
Public Class frmSelectSavePath
Inherits System.Windows.Forms.Form
Friend WithEvents TreeView1 As System.Windows.Forms.TreeView
Friend WithEvents Button1 As System.Windows.Forms.Button
Friend WithEvents Button2 As System.Windows.Forms.Button
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'该调用是 Windows 窗体设计器所必需的。
InitializeComponent()
'在 InitializeComponent() 调用之后添加任何初始化
ROOTnodx = TreeView1.Nodes.Add("\")
'TreeView1.PathSeparator = "\"
Call ADD_DIRS(LASTdir, ROOTnodx)
TreeView1.SelectedNode = ROOTnodx
ROOTnodx.Expand()
DI = False
End Sub
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
MyBase.Dispose(disposing)
End Sub
'注意: 以下过程是 Windows 窗体设计器所必需的
'可以使用 Windows 窗体设计器修改此过程。
'不要使用代码编辑器修改它。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSelectSavePath))
Me.TreeView1 = New System.Windows.Forms.TreeView
Me.Button1 = New System.Windows.Forms.Button
Me.Button2 = New System.Windows.Forms.Button
Me.SuspendLayout()
'
'TreeView1
'
Me.TreeView1.Dock = System.Windows.Forms.DockStyle.Top
Me.TreeView1.Location = New System.Drawing.Point(0, 0)
Me.TreeView1.Name = "TreeView1"
Me.TreeView1.Size = New System.Drawing.Size(240, 240)
Me.TreeView1.TabIndex = 2
'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(85, 245)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(72, 20)
Me.Button1.TabIndex = 1
Me.Button1.Text = "确定"
'
'Button2
'
Me.Button2.Location = New System.Drawing.Point(165, 245)
Me.Button2.Name = "Button2"
Me.Button2.Size = New System.Drawing.Size(72, 20)
Me.Button2.TabIndex = 0
Me.Button2.Text = "取消"
'
'Open
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.ClientSize = New System.Drawing.Size(240, 268)
Me.Controls.Add(Me.Button2)
Me.Controls.Add(Me.Button1)
Me.Controls.Add(Me.TreeView1)
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.Name = "Open"
Me.Text = "选择路进"
Me.ResumeLayout(False)
End Sub
#End Region
Dim NOdx As TreeNode
Dim ROOTnodx As TreeNode
Public LASTdir As String = "\"
Dim DI As Boolean
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.DialogResult = Windows.Forms.DialogResult.OK
End Sub
Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.DialogResult = Windows.Forms.DialogResult.Cancel
End Sub
Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
LASTdir = e.Node.FullPath.Substring(1)
End Sub
Private Sub ADD_DIRS(ByVal DIRS As String, ByVal nnodx As TreeNode)
Try
Dim A_dirs As String() = System.IO.Directory.GetDirectories(DIRS)
A_dirs.Sort(A_dirs)
Dim dir As String
TreeView1.BeginUpdate()
For Each dir In A_dirs
Dim yy As TreeNode
yy = nnodx.Nodes.Add(dir.Substring(dir.LastIndexOf("\") + 1))
If DI = False Then '只递归一层,递归N层用N
DI = True 'N=N+1
Call ADD_DIRS(dir, yy)
yy.Tag = True 'N=N-1
DI = False
End If
Next
Catch ex As Exception
MessageBox.Show(ex.Message.ToString(), "MobileAnt Demo")
Finally
TreeView1.EndUpdate()
End Try
End Sub
Private Sub TreeView1_BeforeExpand(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewCancelEventArgs) Handles TreeView1.BeforeExpand
Dim I As Int32
For I = 0 To e.Node.Nodes.Count - 1
If e.Node.Nodes(I).Tag = True Then Exit Sub
If e.Node.Nodes(I).GetNodeCount(False) = 0 Then
Call ADD_DIRS(e.Node.Nodes(I).FullPath.Substring(1), e.Node.Nodes(I))
Else
Exit Sub
End If
Next
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -