the*_*dev 6 vb6 winapi shell32.dll
我有这个电话:
oShell.BrowseForFolder(Me.hwnd, "Select path:", 0, "C:\dir\")
Run Code Online (Sandbox Code Playgroud)
这将打开一个标准的文件浏览器对话框,其中包含"C:\ dir \".我的问题是你无法在根文件夹上方浏览.(如doc http://msdn.microsoft.com/en-us/library/bb774065(v=vs.85).aspx中所述)
有关使用选定路径和完整浏览可能性对该对话框进行操作的任何建议吗?
谢谢
这样做的方法涉及调用底层API SHBrowseForFolder().
由于您希望整个shell命名空间可用,因此您需要传递NULLas pidlRoot.要选择所需的文件夹,您需要提供回调lpfn.BFFM_INITIALIZED通过设置所选文件夹使此回调响应.通过将BFFM_SETSELECTION消息发送到对话框的窗口句柄(传递给回调函数)来执行此选择.
没有代码,因为我没有VB6,但希望这个方法的大纲足以让你继续前进.
Karl E Peterson的优秀网站包含一个示例,该示例演示了带回调的API调用SHBrowseForFolder,如David Heffernan的回答.
查看通过回调函数的MFolderBrowse.bas例程.BrowseForFolderByPIDLBrowseCallbackProc
| 归档时间: |
|
| 查看次数: |
3861 次 |
| 最近记录: |