在VC中如何使用对话框让用户选择自己保存文件的路径
2012-10-18 13:36
411 查看
其他的就不多说了,就说说关键代码吧~
第一种:含路径和文件名的(假设为*.mdb文件)
CFileDialog FileDlg(false,"*.mdb",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"mdb文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*||"); //若为ture则显示标题为打开,若为false则是另存为。
FileDlg.m_ofn.lpstrTitle="保存数据文件"; //设置小标题,该行可要可不要
if(FileDlg.DoModal()==IDOK)
{
SetDlgItemText(IDC_EDIT_PATH,FileDlg.GetPathName());//将获取到的路径以及文件名,传给edit
}
例图:
第二种:只有路径而不需要文件名的
char buf[MAX_PATH];
ZeroMemory(buf, sizeof(buf));
BROWSEINFO bi;
bi.hwndOwner = m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = buf;
bi.lpszTitle = "请选择目录:";
bi.ulFlags = BIF_EDITBOX ;
bi.lpfn = NULL;
bi.lParam = 0;
bi.iImage = 0;
LPITEMIDLIST lp = SHBrowseForFolder(&bi);
if(lp && SHGetPathFromIDList(lp, buf))
{
SetDlgItemText(IDC_EDIT_PATH,buf);
}
例图:
第一种:含路径和文件名的(假设为*.mdb文件)
CFileDialog FileDlg(false,"*.mdb",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"mdb文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*||"); //若为ture则显示标题为打开,若为false则是另存为。
FileDlg.m_ofn.lpstrTitle="保存数据文件"; //设置小标题,该行可要可不要
if(FileDlg.DoModal()==IDOK)
{
SetDlgItemText(IDC_EDIT_PATH,FileDlg.GetPathName());//将获取到的路径以及文件名,传给edit
}
例图:
第二种:只有路径而不需要文件名的
char buf[MAX_PATH];
ZeroMemory(buf, sizeof(buf));
BROWSEINFO bi;
bi.hwndOwner = m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = buf;
bi.lpszTitle = "请选择目录:";
bi.ulFlags = BIF_EDITBOX ;
bi.lpfn = NULL;
bi.lParam = 0;
bi.iImage = 0;
LPITEMIDLIST lp = SHBrowseForFolder(&bi);
if(lp && SHGetPathFromIDList(lp, buf))
{
SetDlgItemText(IDC_EDIT_PATH,buf);
}
例图:
相关文章推荐
- 在VC中如何使用对话框让用户选择自己保存文件的路径
- VC打开文件对话框与保存文件路径选择对话框
- C语言把内存的文件保存到硬盘时如何把文件名由用户通过屏幕自己设置,并且保存到指定的路径
- GUI编程:打开文件对话框、保存文件对话框、颜色选择对话框的使用
- 关于创建Excel表格问题(保存至指定文件/弹出直接打开还是下载,并可以选择保存路径的对话框)
- 利用Qt对话框选择文件保存路径
- C#按键打开文件选择对话框,并把选择好的路径保存/显示到textBox
- 如何打开保存路径选择对话框
- 选择保存文件路径的对话框
- 如何用VBA打开选择文件和选择路径的对话框
- VC 使用"文件浏览"对话框选择文件夹
- windows API实现用户选择文件路径的对话框
- 转载:如何更改vc新建文件默认保存路径
- VC弹出选择“文件路径”和选择“文件夹路径”对话框
- VB6.0 浏览文件夹对话框 选择文件保存路径
- windows API实现用户选择文件路径的对话框
- VC6 MFC 如何让用户选择颜色并显示在对话框内?
- VC点击按键弹出文件路径选择对话框
- 如何更改Internet临时文件保存位置(最全的方法,特别适合使用RamDisk的用户)
- VC/MFC如何使用CreateEx()创建自己的对话框资源