您的位置:首页 > 其它

MFC调用打开文件、文件夹对话框

2010-09-01 11:28 543 查看
打开文件对话框:

void OpenFile()
{
// TODO: Add your control notification handler code here
CString FileType = "EXE files(*.exe)|*.exe||";
CFileDialog * lpszOpenFile;
lpszOpenFile = new CFileDialog(TRUE, "", "", OFN_FILEMUSTEXIST|OFN_HIDEREADONLY, FileType);
if (lpszOpenFile->DoModal() == IDOK)
{
CString szGetName;
szGetName = lpszOpenFile->GetPathName();
//szGetName 就是返回的文件路径以及文件名
//N你的操作
}
delete lpszOpenFile;
UpdateData(FALSE);
}


打开文件夹对话框:

void OpenFolder()
{
CString m_MonitorPath;
BROWSEINFO browseInfo;
::ZeroMemory(&browseInfo, sizeof(BROWSEINFO));//CString strPath = _T("");
TCHAR szBuffer[MAX_PATH]  = {0};
browseInfo.hwndOwner      = NULL;
browseInfo.pszDisplayName = szBuffer;
browseInfo.ulFlags        = BIF_RETURNFSANCESTORS|BIF_RETURNONLYFSDIRS;
LPITEMIDLIST pIDList      = SHBrowseForFolder(&browseInfo);
if(pIDList == NULL)
return;
SHGetPathFromIDList(pIDList, szBuffer);
LPMALLOC lpMalloc;
if(FAILED(SHGetMalloc(&lpMalloc)))
return;
lpMalloc->Free(pIDList);
lpMalloc->Release();
m_MonitorPath.Format(_T("%s"), szBuffer);

//m_MonitorPath
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: