如何用代码 弹出“打开文件”对话框,并且返回一个文件路径? 如题,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CFileDialog dlg(TRUE); // open dialog if(dlg.DoModal()==IDOK) strFileName = dlg.GetFileName(); CFileDialog DLG();CString strPathName;if (DLG.DoModal()=IDOK){ strPathName=DLG.GetPathName();} GetOpenFileName()参数设置一下就可以了 CFileDialog dlg(TRUE); // open dialog CString strFileName;if(dlg.DoModal()==IDOK) strFileName = dlg.GetPathName(); 如果楼主的意思是得到文件之后,在自己得到该文件的路经,那么楼上的几个还勉强,但应该是CFileDialog的GetFilePath()函数,否则像楼上说的GetFileName只能返回文件名。如C:\temp\text.txt用GetFileName返回的是text.txt,而GetFilePath是C:\temp\text.txt。如果楼主想通过CFileDialog直接得到一个路经而不是文件,那么应该:使用SHBrowseForFolder,例如: BROWSEINFO info; memset(&info, 0, sizeof(info)); info.lpszTitle = "选择XX文件所在的目录:"; LPCITEMIDLIST pidl; pidl = SHBrowseForFolder(&info); if(pidl != NULL) { char pszPath[4096]; if(!SHGetPathFromIDList(pidl, pszPath)) return; if(strlen(pszPath) < 3) return; } 求助一句英文文档的意思 BUTTON上面怎么同时显示图片和标题 duplicatehandle什么作用 请问大家:在树型控件中怎样获取系统(电脑)里面的信息资源(象资源管理器那样)啊??在线等..... 如何象写字版那样在SDI程序可以打开多种文件? vmr9的问题 证券公司的电脑部一般做什么工作? 为什么我的数据集会出问题? 类型重复定义问题 MFC ADO 使用theapp指针内存报错,该如何解决? 关于CRecordset的问题 一般的屏幕抓取的软件传输的都是BMP格式的图象,可否把抓区到的屏幕保存成为其他类型的图象格式进行传输呢,
if(dlg.DoModal()==IDOK)
strFileName = dlg.GetFileName();
CString strPathName;
if (DLG.DoModal()=IDOK)
{
strPathName=DLG.GetPathName();
}
参数设置一下就可以了
CString strFileName;
if(dlg.DoModal()==IDOK)
strFileName = dlg.GetPathName();
应该是CFileDialog的GetFilePath()函数,否则像楼上说的GetFileName只能返回文件名。
如C:\temp\text.txt用GetFileName返回的是text.txt,而GetFilePath是C:\temp\text.txt。如果楼主想通过CFileDialog直接得到一个路经而不是文件,那么应该:
使用SHBrowseForFolder,例如:
BROWSEINFO info;
memset(&info, 0, sizeof(info));
info.lpszTitle = "选择XX文件所在的目录:";
LPCITEMIDLIST pidl;
pidl = SHBrowseForFolder(&info);
if(pidl != NULL)
{
char pszPath[4096];
if(!SHGetPathFromIDList(pidl, pszPath))
return;
if(strlen(pszPath) < 3)
return; }