博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VC 浏览文件和文件夹
阅读量:6403 次
发布时间:2019-06-23

本文共 1904 字,大约阅读时间需要 6 分钟。

// 浏览--文件:

// 浏览--文件void DecSendData::OnBnClickedBtnScan(){    CString szPath = "";    CFileDialog FDlg(TRUE , ".doc" , NULL , OFN_HIDEREADONLY , "word文件(*.doc)|*.doc|所有文件(*.*) |*.*||" );    // 显示对话框并使用户可以进行选择    if(IDOK == FDlg.DoModal())    {        // 返回选定文件的完整路径        szPath.Replace("\\","\\\\");        szPath = FDlg.GetPathName();        // 界面显示获取的完整路径        szDecSendDataPath = szPath;        UpdateData(false);    }}

 

-----------------------------------------------------------------------------------------------------------------------------------

 

// 浏览--文件夹:

// 浏览--文件夹void DecSendData::OnBnClickedBtnScan(){    CString szPath = GetDirectoryPath();    if (szPath != "")    {       szDecSendDataPath = szPath;       UpdateData(false);    }}// 获取选择的路径CString DecSendData::GetDirectoryPath(){    LPITEMIDLIST pidlRoot=NULL;    SHGetSpecialFolderLocation(m_hWnd,CSIDL_DRIVES,&pidlRoot);    BROWSEINFO bi;   //the input parameters needed    CString strDisplayName;      bi.hwndOwner=GetSafeHwnd();   //get handle value of parent window     bi.pidlRoot=pidlRoot;       bi.pszDisplayName=strDisplayName.GetBuffer(MAX_PATH+1);   //get buffer pointer    char szLan[32] = {
0}; sprintf(szLan, "%s", "文件夹"); bi.lpszTitle=szLan; //set title bi.ulFlags=BIF_RETURNONLYFSDIRS; //set flag bi.lpfn=NULL; bi.lParam=0; bi.iImage=0; //The above parameters are not related to the settings, better set up, //LPITEMIDLIST lpIDList= SHBrowseForFolder(&bi); //open dialog LPITEMIDLIST lpIDList= SHBrowseForFolder(&bi); //open dialog strDisplayName.ReleaseBuffer(); //correspond to GetBuffer() char pPath[MAX_PATH]; CString Str; if (lpIDList) { SHGetPathFromIDList (lpIDList, pPath); Str=pPath; } return Str;}

有关《文件加浏览(SHBrowseForFolder)》的资料见下面地址:

 

有关《VC打开浏览文件对话框、浏览文件夹对话框》:

结束。。。。

转载于:https://www.cnblogs.com/xuejianhui/articles/2742319.html

你可能感兴趣的文章
Universal-Image-Loader源码分析,及常用的缓存策略
查看>>
java日志包桥接关系图
查看>>
基于Deep Learning 的视频识别方法概览
查看>>
PostgreSQL 如何实现upsert与新旧数据自动分离
查看>>
MySql Blob图片类型存储Bug解决:索引超出了数组界限错误
查看>>
enum枚举类型
查看>>
Android API 中文 (52) —— ZoomButtonsController.OnZoomListener
查看>>
Go语言的可变(不定长)参数函数
查看>>
!+"\v1" 用来“判断浏览器类型”还是用来“IE判断版本”的问题!
查看>>
Linux IO模型漫谈(2)
查看>>
[网摘学习]在Ubuntu上安装和配置OpenStack Nova之二
查看>>
想挖大数据价值,你得先“挖人”!
查看>>
core dump磁盘报警问题排查过程
查看>>
Nginx报 No input file specified. 的问题解决之路
查看>>
Design Pattern: Not Just Mixin Pattern
查看>>
Ubuntu14.04下安装Hadoop2.5.1 (单机模式)
查看>>
kettle入门与实战(视频教程)
查看>>
简单JNI使用demo
查看>>
框架开发管理流程图
查看>>
Java 容器 & 泛型:四、Colletions.sort 和 Arrays.sort 的算法
查看>>