zoukankan
html css js c++ java
[MFC]选择目录对话框和选择文件对话框
在MFC编程中经常会需要用到选择目录和选择文件的界面,以下总结一下本人常用的这两种对话框的生成方法:
选择目录对话框
//选择目录按钮
void CDcPackerDlg::OnBnClickedDecgen()
{
char szPath[MAX_PATH]; //存放选择的目录路径
CString str;
ZeroMemory(szPath, sizeof(szPath));
BROWSEINFO bi;
bi.hwndOwner = m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = szPath;
bi.lpszTitle = "请选择需要打包的目录:";
bi.ulFlags = 0;
bi.lpfn = NULL;
bi.lParam = 0;
bi.iImage = 0;
//弹出选择目录对话框
LPITEMIDLIST lp = SHBrowseForFolder(&bi);
if(lp && SHGetPathFromIDList(lp, szPath))
{
str.Format("选择的目录为 %s", szPath);
AfxMessageBox(str);
}
else
AfxMessageBox("无效的目录,请重新选择");
}
选择文件对话框
CString CDcPackerDlg::BootOpenDialog() //返回选择的文件名称
{
CString strFile = _T("");
CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Describe Files (*.cfg)|*.cfg|All Files (*.*)|*.*||"), NULL);
if (dlgFile.DoModal())
{
strFile = dlgFile.GetPathName();
}
return strFile;
}
//加载文件按钮
void CDcPackerDlg::OnBnClickedSelectdec()
{
// TODO: Add your control notification handler code here
m_strDescPath = ""; //类的成员变量
//"打开文件"对话框,选择文件,返回其路径
m_strDescPath = BootOpenDialog();
}
查看全文
相关阅读:
nginx简单配置
解决 eclipse出现 Address already in use: bind
JavaScript 正则表达式学习
RabbitMQ的介绍与spring整合
RabbitMQ的安装与客户端的简单实用
java中的break与continue
书单
(七)SpringBoot2.0基础篇- application.properties属性文件的解析及获取
(六)SpringBoot2.0基础篇- MyBatis、Redis整合(JedisCluster集群连接)
(五)SpringBoot2.0基础篇- Mybatis与插件生成代码
原文地址:https://www.cnblogs.com/whwywzhj/p/8408942.html
最新文章
LazyMan深入解析和实现
localStorage的黑科技-js和css缓存机制
动态加载css方法实现和深入解析
hash实现锚点平滑滚动定位
window.onload多个共存
YUI Compressor压缩失效的场景-eval和with
解决 jQuery.UI.Resizable aspectRatio在init后无法重新设置
IE条件注释,嗅探低版本IE用户,并引导升级
【Vscode】 前端项目文件自动格式化(.Vue,.js)
【.Net core】EFCore——Code First生成数据库与表
热门文章
【Git】Git-常用命令备忘录(三)
【.Net core】ASP.NET Core 中的路由
【Git】Git-常用命令备忘录(二)
【Git】Git-常用命令备忘录(一)
【One by one系列】Git一步步生成SSH密钥,免密拉取远程仓库
【Nginx】Nginx部署实战——静态文件+反向代理+均衡负载+https+websocket
【Node.js】匿名函数-闭包-Promise
【One by one系列】一步步学习TypeScript
年末十一月末
关于三元运算符
Copyright © 2011-2022 走看看