我正在尝试创建一个简单的MFC文件夹浏览器,并在MSDN中寻找答案,这里:这是我的代码到目前为止:
void CAddFilterDlg::OnBnClickedAddDll()
{
CFileDialog dlg(TRUE/*bOpenFileDialog*/, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT , NULL, NULL, 0, TRUE/*bVistaStyle*/);
CString folderPath = dlg.GetFolderPath();
IFileOpenDialog * openDlg = dlg.GetIFileOpenDialog();
if ( openDlg != NULL )
{
openDlg->SetOptions(FOS_PICKFOLDERS);
openDlg->Release();
}
dlg.DoModal();
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
- 不允许指向不完整类类型的指针(这适用于openDlg)
- 标识符"FOS_PICKFOLDERS"未定义
我正在开发visual studio 2010,win7
我知道这是一个有点过时的问题,但我最近遇到了同样的问题,并且也在努力寻找一个简单易用的解决方案。
我发现这个类似 CFileBrowser 的类是解决此问题的非常有效且简单的解决方案:
CFolderPickerDialog FolderSelectDialog(theApp.xAM->GetExportPath().c_str(),NULL,this);
if (FolderSelectDialog.DoModal() == IDOK)
{
CString cBuff = FolderSelectDialog.GetPathName();
std::wstring wsPath = std::wstring(cBuff);
theApp.xAM->SetExportPath(wsPath);
CEditExportFolderPath.SetWindowTextW(cBuff);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9435 次 |
| 最近记录: |