各种有关文件的对话框的创建方法
来源:互联网 发布:ps mac版多少钱 编辑:程序博客网 时间:2024/06/18 17:14
如图所示,工程中列举了常用对话框的创建方法,如保存对话框,文件选择对话框,文件夹选择对话框。后续有更新。链接:工程源代码
保存对话框创建:
UpdateData(TRUE);
CString filename = "1.txt";
CFileDialog saveDlg(FALSE, NULL, filename);//第一参数为FALSE则是保存对话框,TRUE则是打开文件对话框
if (IDOK == saveDlg.DoModal())
{
m_save = saveDlg.GetPathName();
m_CSave.SetWindowTextA(m_save);
}
选择文件夹对话框,ulFlags有很多组合方法,可自由组合:
void CFileDiaDlg::OnSetFlags(){UpdateData(TRUE);if (m_check1){bi.ulFlags = BIF_RETURNONLYFSDIRS;}if (m_check2){bi.ulFlags = BIF_BROWSEINCLUDEFILES;}if (m_check3){bi.ulFlags = BIF_EDITBOX;}if (m_check1 && m_check3){bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_EDITBOX;}if (m_check2 && m_check3){bi.ulFlags = BIF_BROWSEINCLUDEFILES | BIF_EDITBOX;}if (m_check4){bi.ulFlags = BIF_USENEWUI;}if (m_check1 && m_check4){bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_USENEWUI;}if (m_check2 && m_check4){bi.ulFlags = BIF_BROWSEINCLUDEFILES | BIF_USENEWUI;}}void CFileDiaDlg::OnBnClickedFolderButton(){// TODO: 在此添加控件通知处理程序代码UpdateData(TRUE);ZeroMemory(&bi, sizeof(BROWSEINFO));bi.hwndOwner = m_hWnd;bi.lpszTitle = _T("请选择一个文件夹:");OnSetFlags();LPITEMIDLIST pidl = SHBrowseForFolder(&bi);BOOL bRet = FALSE;TCHAR szFolder[MAX_PATH * 2];szFolder[0] = _T('\0');if (pidl){if (SHGetPathFromIDList(pidl, szFolder)){bRet = TRUE;}IMalloc *pMalloc = NULL;if (SUCCEEDED(SHGetMalloc(&pMalloc)) && pMalloc){pMalloc->Free(pidl);pMalloc->Release();}m_folder = szFolder;m_CFolder.SetWindowTextA(m_folder);}}
文件选择对话框,dw也有很多组合方法,可按需选择组合:
void CFileDiaDlg::OnSetDw(){if (m_check5){dw = OFN_ALLOWMULTISELECT; //可以选择多个文件}if (m_check6){dw = OFN_CREATEPROMPT; //如果输入的文件名不存在,则返回询问是否创建消息框}if (m_check7){dw = OFN_FILEMUSTEXIST; //只能输入已存在的文件名}if (m_check8){dw = OFN_FORCESHOWHIDDEN; //可以显示隐藏的文件}}void CFileDiaDlg::OnBnClickedFileButton(){// TODO: 在此添加控件通知处理程序代码UpdateData(TRUE);OnSetDw();CFileDialog filedlg(TRUE, NULL, NULL, dw);if (IDOK == filedlg.DoModal()){m_file = filedlg.GetPathName();m_CFile.SetWindowTextA(m_file);}}
0 0
- 各种有关文件的对话框的创建方法
- 文件对话框的创建
- win32创建对话框遇到的各种问题
- 创建模态非模态对话框的方法
- js正则表达式有关的各种方法
- 有关对话框的问题
- [绍棠] iOS获取各种文件目录路径的方法和NSFileManager类的有关用法
- 各种索引的创建方法
- 有关在对话框上创建视图上的再探索
- 有关在对话框上创建视图上的再探索
- 有关在对话框上创建视图上的再探索
- 有关XML文件的创建与读取
- 各种对话框的使用
- InstallShield创建自定义对话框的基本方法
- InstallShield创建自定义对话框的基本方法
- InstallShield创建自定义对话框的基本方法
- InstallShield创建自定义对话框的基本方法
- Android中对话框(Dialog)的创建方法
- hbase基本操作
- c语言数据类型取值范围
- java中功能选项的移除指南(二)
- 山东省第五届ACM大学生程序设计竞赛-Weighted Median(模拟)
- HDU 1540 Tunnel Warfare(区间合并)
- 各种有关文件的对话框的创建方法
- java时间戳正序和倒序
- Java EE -> Get与Post 编码问题
- LeetCode *** 207. Course Schedule (Topological Sort )
- [firefox+plug-n-hack]轻松地配置burpsuite代理https流量 - 20160318
- 学习资源(均为转载内容)
- ElasticSearch性能优化策略
- 虚函数与纯虚函数
- 三和韓長庚 著 易學原理總論 對讀 021_040