点击按钮打开选择文件对话框
1.创建回调函数
int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData)
{
switch (uMsg)
{
case BFFM_INITIALIZED: //初始化消息
::SendMessage(hwnd, BFFM_SETSELECTION, TRUE, lpData);//传递默认打开路径
break;
case BFFM_SELCHANGED: //选择路径变化,
{
char curr[MAX_PATH];
SHGetPathFromIDList((LPCITEMIDLIST)lParam, curr);
::SendMessage(hwnd, BFFM_SETSTATUSTEXT, 0, (LPARAM)curr);
}
break;
default:
break;
}
return 0;
}
2.按钮处理函数
TCHAR szDefaultDir[MAX_PATH];
CString strDef(_T("C://WINDOWS//"));
memcpy(szDefaultDir, strDef.GetBuffer(strDef.GetLength()), strDef.GetLength());
strDef.ReleaseBuffer();
TCHAR szPath[MAX_PATH];
BROWSEINFO br;
ITEMIDLIST* pItem;
br.hwndOwner = this->GetSafeHwnd();
br.pidlRoot = 0;
br.pszDisplayName = 0;
br.lpszTitle = "选择路径";
br.ulFlags = BIF_STATUSTEXT | BIF_USENEWUI;
br.lpfn = BrowseCallbackProc; //设置CALLBACK函数
br.iImage = 0;
br.lParam = long(&szDefaultDir); //设置默认路径
pItem = SHBrowseForFolder(&br);
if (pItem != NULL)
{
if (SHGetPathFromIDList(pItem, szPath) == TRUE)
{
CString strDir = szPath;
}
}
转载于:https://blog.51cto.com/evely/1441825
点击按钮打开选择文件对话框相关推荐
- 微信公众号,点击按钮打开pdf文件流,安卓跳转到浏览器里下载,ios可预览但默认不能下载
微信公众号,点击按钮打开pdf文件流,安卓跳转到浏览器里下载,ios可预览但默认不能下载 注:在pc上开始时采用这两种方式是没有效果的,或者打开的是空页面,但上线到公众号是没有问题的!!!!!!!!! ...
- C#打开选择文件对话框和选择目录对话框
1. 选择文件对话框,首先引用using Microsoft.Win32名称空间. private void BrowseButton_Click(object sender, RoutedEv ...
- 弹出打开/保存文件对话框 选择文件夹对话框
打开/保存文件对话框: CFileDialog::CFileDialog(BOOL bOpenFileDialog, //为TRUE则显示打开对话框,为FALSE则显示保存对话文件对话框LPCTSTR ...
- NX二次开发-UFUN打开选择文件夹对话框UF_UI_create_filebox
NX二次开发-UFUN打开选择文件夹对话框UF_UI_create_filebox #include <uf.h> #include <uf_ui.h> #include &l ...
- C# 点击按钮弹出文件选择框
点击按钮弹出文件选择框: // 文件选取 这里只允许txt文件private void button1_Click(object sender, EventArgs e){OpenFileDialog ...
- 两个Android选择文件对话框
这个项目以及代码中使用的未在下面代码给出源码的方法都在这里:https://github.com/NashLegend/LegendUtils 第二种对话框的源码在这里:https://github. ...
- ant design vue:upload打开选择文件弹框前弹出确认框
看antd文档,刚开始我用得beforeUpload来实现,勉强能完成我想要的功能,但是流程上不完美,需要先选择了文件,才能弹出确认框,但是我的确认框其实跟文件没有关系,我想要先弹确认框再打开文件选择 ...
- 选择文件对话框、保存文件对话框、选择文件夹对话框
选择文件对话框 // 设置图像文件过滤格式CString lv_strFilterAll = _T("所有文件(*.*)|*.*||");CString lv_strFilterJ ...
- MFC_选择目录对话框_选择文件对话框_指定目录遍历文件
选择目录对话框 void C资源共享吧视频广告清理工具Dlg::OnBnClickedCls() {// 清空编辑框内容m_Edit.SetWindowTextW(L"");m_E ...
最新文章
- AWS ML deploy platform
- 关于选择哪些村庄试点新农村建设的讨论
- fis3 php cgi,FIS3 : 构建
- spark中各类key算子的用法汇总(持续更新中)
- php unset 多可以什么_php unset()销毁单个或多个变量
- 基于 FPGA 的以太网回环测试verilog实现UDP协议
- Taro+react开发(89):封装为一个函数渲染
- Android 系统(138 )---Mtk平台 Android 打包解包*.img ,修改system.img 参数
- Android反编译分析工具
- 数据采集与数据挖掘是什么?有什么区别?
- BP神经网络模型及梯度下降法
- 朋友圈点赞图在线生成源码
- 【薛定谔方程求解】基于MATLAB的薛定谔方程求解仿真
- 如何在application里面退出打开的activity
- IE代理服务器没有响应 浏览器无法打开网页解决方法
- 算法第一次作业(2.帐篷问题)
- 公司福利直接影响员工的身心健康
- cpu win10 安装yolo_yolov5 win10 数据集制作 各种踩坑
- 【2023电赛备赛】使用sysconfig对ccs进行图形化编程
- C++基础-郑莉 11-12章
热门文章
- GCC选项_-Wl,-soname 及 DT_NEEDED 的解释
- 求1到N的全排列 (转载)
- DEDECMS给图集图片{dede:productimagelist}自动编号
- Shiro 身份验证
- Java线程间通信-回调的实现方式
- [置顶] 火车票余票接口API使用方法
- SpringCloud Hystrix的超时时间配置以及监控平台搭建
- Elasticsearch(一) ES之简介、倒排索引介绍以及 elasticsearch、kibana安装
- 页面点击提交跳转_一个入口一次提交!“六税合一”综合申报操作指南请收好~...
- 使用Docker安装Redis