读书人

如何用CFileDialog 选择文件夹?

发布时间: 2012-10-29 10:03:53 作者: rapoo

怎么用CFileDialog 选择文件夹??
CFileDialog 里边选文件的时候,右下角那个按钮显示的是“打开”,直到用鼠标选中的是个文件而不是文件夹时,才变成“确定”。有没有什么方法能让这个按钮在选择文件夹时就显示“确定”呢?我要选一个文件夹肿么办

[解决办法]
CFileDialog class that only displays folders
一个定制CFileDialog对话框的实例
[解决办法]
不能用CFileDialog

用::SHBrowseForFolder才行

例子:

C/C++ code
BROWSEINFO  bi; bi.hwndOwner=NULL; bi.pidlRoot=NULL; bi.pszDisplayName=NULL; bi.lpszTitle=NULL; bi.ulFlags=0; bi.lpfn =NULL; bi.iImage =0; LPCITEMIDLIST pidl=SHBrowseForFolder(&bi); if(!pidl)  return; TCHAR  szDisplayName[255]; SHGetPathFromIDList(pidl,szDisplayName); CString str(szDisplayName); MessageBox(str,NULL,MB_OK);
[解决办法]
高版本可以用CFolderPickerDialog。
参考 http://baike.baidu.com/view/7217776.htm
[解决办法]
http://www.codeproject.com/Articles/1215/CFileDialogST-v1-0
[解决办法]
用Shell API SHBrowseForFolder()来选择目录
[解决办法]
探讨

不能用CFileDialog

用::SHBrowseForFolder才行

例子:
C/C++ code

BROWSEINFO bi;
bi.hwndOwner=NULL;
bi.pidlRoot=NULL;
bi.pszDisplayName=NULL;
bi.lpszTitle=NULL;
bi.ulFlags=0;
bi.lpfn =NULL;
bi.i……

[解决办法]
::SHBrowseForFolder

读书人网 >VC/MFC

热点推荐