VB引用系统浏览文件夹,并获取路径
- 点滴记录
- 2022-07-21
- 5037

首先在vb里新建个模块放入下方代码Public Const BIF_RETURNONLYFSDIRS = 1Public Const BIF_DONTGOBELOWDO...
首先在vb里新建个模块放入下方代码
Public Const BIF_RETURNONLYFSDIRS = 1
Public Const BIF_DONTGOBELOWDOMAIN = 2
Public Declare Function SHBrowseForFolder Lib "shell32.dll" Alias "SHBrowseForFolderA" (LpBrowseInfo As BROWSEINFO) As Long
Public Declare Function SHGetPathFromIDlist Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Public Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Public Function GetFolder(ByVal hWnd As Long, Optional Title As String) As String
Dim bi As BROWSEINFO
Dim pidl As Long
Dim folder As String
folder = Space(255)
With bi
If IsNumeric(hWnd) Then .hOwner = hWnd
.ulFlags = BIF_RETURNONLYFSDIRS
.pidlRoot = 0
If Title <> "" Then
.lpszTitle = Title & Chr$(0)
Else
.lpszTitle = "选择目录" & Chr$(0)
End If
End With
pidl = SHBrowseForFolder(bi)
If SHGetPathFromIDlist(ByVal pidl, ByVal folder) Then
GetFolder = Left(folder, InStr(folder, Chr$(0)) - 1)
Else
GetFolder = ""
End If
End Function
然后在窗体上放一个文本框和一个按钮
放入下方代码
Private Sub Command6_Click()
Dim WJstr
WJstr = GetFolder(Me.hWnd, "从下面选择一个文件夹存放数据")
If WJstr <> "" Then
Text4.Text = WJstr
End If
End Sub
本文链接:http://zxmcloud.com/?id=59
上一篇:关闭WIN10自动更新
下一篇:c#自动更新检测
发表评论