是否可以通过CommonDialog控件选择目录?如果不行,那么要是想以选文件的方式选择目录该怎么实现呢?谢谢
解决方案 »
- 如何 将 HTML 资料 丢入 HTMLDocument 物件里面
- MyReg.Pattern = "^[\w-\.]+@\w+\.\w+$"
- 谁能帮我这个控件修改一下呀,谢谢了.
- excel中获得图表的数据源,也就是建立图表所用的数据怎么获得。
- 求全国计算机等级考试2级VB笔试练习题!!!
- 在VB中如何将txt文本导入sqlserver
- 有人需要vb6写的中国移动短信平台系统软件吗?
- 怎样打印我用mshflaxgrid绑定的数据。
- SuperPlayer 1.0 寻找志愿测试者(10位)
- 如何用clipboard?,需要作些设置吗?
- RUKYO .....谢谢你的帮助!!
- 窗体问题...............
Public Type BrowseInfo
hwndOwner As Long
pIDLRoot As Long
pszDisplayName As Long
lpszTitle As Long
ulFlags As Long
lpfnCallback As Long
lParam As Long
iImage As Long
End Type
Public Const BIF_RETURNONLYFSDIRS = 1
Public Const MAX_PATH = 260
Public Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
Public Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Public Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Public Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long'调用API打开目录浏览对话框
Public Function BrowseForFolder(hwndOwner As Long, sPrompt As String) As String
Dim iNull As Integer
Dim lpIDList As Long
Dim lResult As Long
Dim sPath As String
Dim udtBI As BrowseInfo
With udtBI
.hwndOwner = hwndOwner
.lpszTitle = lstrcat(sPrompt, "")
.ulFlags = BIF_RETURNONLYFSDIRS
End With
lpIDList = SHBrowseForFolder(udtBI)
If lpIDList Then
sPath = String$(MAX_PATH, 0)
lResult = SHGetPathFromIDList(lpIDList, sPath)
Call CoTaskMemFree(lpIDList)
iNull = InStr(sPath, vbNullChar)
If iNull Then sPath = Left$(sPath, iNull - 1)
End If
BrowseForFolder = sPath
End Function
dir = BrowseForFolder(Me.hwnd, "请选择外观面板的目录.")
设置initdir只是设置出示目录而已,并不能选择目录,好像不行啊
With CommonDialog1
.CancelError = True
.filter = "Pictures(*.gif;*.jpg)|*.bmp;*.ico;*.gif;*.jpg|" & _
"Wave Files(*.wav)|*.wav|MS Video(*.avi)|*.avi|"
.Flags = cdlOFNHideReadOnly
.ShowOpen
If Err.Number = cdlCancel Then
Err.Clear
Exit Sub
End If
Text1 = .FileName
End With
你试一下