📄 form1.frm
字号:
VERSION 5.00
Begin VB.Form Form1
BorderStyle = 1 'Fixed Single
Caption = "文件浏览夹的高级应用"
ClientHeight = 5970
ClientLeft = 45
ClientTop = 330
ClientWidth = 4335
Icon = "Form1.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5970
ScaleWidth = 4335
StartUpPosition = 2 '屏幕中心
Begin VB.TextBox Text4
Height = 375
Left = 240
TabIndex = 9
Text = "Text4"
Top = 4080
Width = 3735
End
Begin VB.TextBox Text3
Height = 375
Left = 240
TabIndex = 8
Text = "Text3"
Top = 3240
Width = 3735
End
Begin VB.TextBox Text2
Height = 375
Left = 3000
TabIndex = 7
Text = "Text2"
Top = 780
Width = 375
End
Begin VB.TextBox Text1
Height = 375
Left = 1080
TabIndex = 6
Text = "Text1"
Top = 780
Width = 615
End
Begin VB.CheckBox Check3
Caption = "对话框中包含文件及文件夹"
Height = 255
Left = 360
TabIndex = 5
Top = 2520
Width = 2535
End
Begin VB.CheckBox Check2
Caption = "编辑值必须有效"
Height = 255
Left = 360
TabIndex = 4
Top = 2280
Width = 1575
End
Begin VB.CheckBox Check1
Caption = "包含编辑框"
Height = 255
Left = 360
TabIndex = 3
Top = 2040
Width = 1215
End
Begin VB.ComboBox Combo1
Height = 300
Left = 480
Sorted = -1 'True
TabIndex = 2
Text = "Combo1"
Top = 360
Width = 3615
End
Begin VB.CommandButton CmdQuit
Caption = "退出(&Q)"
Height = 375
Left = 3360
TabIndex = 1
Top = 4680
Width = 975
End
Begin VB.CommandButton Command1
Caption = "浏览..."
Height = 375
Left = 3000
TabIndex = 0
Top = 1560
Width = 975
End
Begin VB.Label Label7
Caption = "浏览文件夹:"
Height = 255
Left = 480
TabIndex = 16
Top = 120
Width = 1095
End
Begin VB.Label Label6
AutoSize = -1 'True
Caption = "文件全名"
Height = 180
Left = 240
TabIndex = 15
Top = 3840
Width = 720
End
Begin VB.Label Label5
AutoSize = -1 'True
Caption = "用户选择的文件"
Height = 180
Left = 240
TabIndex = 14
Top = 2880
Width = 1260
End
Begin VB.Label Label4
Caption = "高级选项"
Height = 255
Left = 360
TabIndex = 13
Top = 1560
Width = 735
End
Begin VB.Label Label3
Caption = "十六进制"
Height = 255
Left = 1920
TabIndex = 12
Top = 840
Width = 855
End
Begin VB.Label Label2
Caption = "Label2"
Height = 1335
Left = 240
TabIndex = 11
Top = 4560
Width = 3015
End
Begin VB.Label Label1
Caption = "十进制"
Height = 255
Left = 360
TabIndex = 10
Top = 840
Width = 615
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim CSIDL As Long
Dim MaxOSCSIDL As Long
Dim OSIsNT As Boolean
Dim OSIsNT5 As Boolean
Private Function Browse(BIF_FLAGS As Long, sTitle As String) As String
Dim pidl As Long
Dim BI As BROWSEINFO
Dim sPath As String
Dim pos As Integer
'填写BROWSEINFO结构数据
With BI
.hOwner = hWnd
.pidlRoot = CSIDL
.lpszTitle = "Browsing " & sTitle
.ulFlags = BIF_FLAGS
.pszDisplayName = Space$(MAX_PATH)
End With
'显示浏览对话框,并返回所选元素的pidl
pidl = SHBrowseForFolder(BI)
'如果pidl有效,解析用户的选择
sPath = Space$(MAX_PATH)
If SHGetPathFromIDList(ByVal pidl, ByVal sPath) Then
'SHGetPathFromIDList返回所选元素的绝对路径,
'对于虚文件夹,函数不会返回任何路径信息。
pos = InStr(sPath, Chr$(0))
If pos Then Browse = Left(sPath, pos - 1)
Else: Browse = ""
Text3 = ""
End If
'pszDisplayName给出了用户最终选择的元素的字符串,
pos = InStr(BI.pszDisplayName, Chr$(0))
If pos Then Text3 = Left(BI.pszDisplayName, pos - 1)
'释放pidl
Call CoTaskMemFree(pidl)
End Function
Public Function GetV5Description(CSLID As Long) As String
Dim msg As String
Select Case CSLID
Case CSIDL_ADMINTOOLS
msg = "用于存放用户的系统管理工具的5.0.版的文件系统目录。"
msg = msg & "Microsoft 管理控制台会将用户定制的控制台信息存放在本目录中。"
msg = msg & "这些信息会随用户的不同而有所不同"
Case CSIDL_ALTSTARTUP
msg = "对应于用户的未被本地化的启动程序组的文件系统目录"
Case CSIDL_APPDATA
msg = "存放应用程序指定数据的文件系统目录"
msg = msg & ",其通用目录是C:\WINNT\Profiles\username\Application Data."
Case CSIDL_BITBUCKET
msg = "存放用户的回收站(Recycle Bin)中的文件对象的文件系统目录。"
Case CSIDL_COMMON_ADMINTOOLS
msg = "包含计算机的所有用户的系统管理工具的"
msg = msg & "5.0.版的文件系统目录"
Case CSIDL_COMMON_ALTSTARTUP
msg = "未被本地化的所有用户的启动程序组的文件系统目录。"
Case CSIDL_COMMON_APPDATA
msg = "存放所有用户的应用程序数据的5.0.版的文件系统目录"
msg = msg & "如C:\WINNT\Profiles\All Users\Application Data."
Case CSIDL_COMMON_DESKTOPDIRECTORY
msg = "存放所有用户的显示在桌面上的文件或文件夹的文件系统目录。"
msg = msg & "如 C:\WINNT\Profiles\All Users\Desktop. "
Case CSIDL_COMMON_DOCUMENTS
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -