MFC选择文件(夹)按钮实现
MFC选择文件(夹)按钮实现
选择文件(夹)
void CFileSelectDlg::OnBnClickedButtonSelect()
{
if(((CButton*)(GetDlgItem(IDC_RADIO_FILE)))->GetCheck())
{
char strExt[] = "dat";//设置文件的读取类型
CString szFilter = "GeoTiff Files (*.dat)|*.dat|All Files (*.*)|*.*||";
SelectFile(strExt,szFilter);
}
else
{
CString floder = SelectFolder();
SetDlgItemText(IDC_EDIT_PATH,floder);
}
}
选择文件
bool CFileSelectDlg::SelectFile(char* strExt,CString const& szFilter)
{
CFileDialog dlg(TRUE,strExt,NULL,OFN_FILEMUSTEXIST | OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT,szFilter);
dlg.m_ofn.lpstrTitle = "请选择缓存文件";
CString inPath;
CArray<CString,CString> aryFilename;
if(dlg.DoModal() == IDOK)
{
CString filenames;
POSITION posFile = dlg.GetStartPosition();
while(posFile != NULL)
{
aryFilename.Add(dlg.GetNextPathName(posFile));
}
} int SelFileNum = aryFilename.GetSize();
if(SelFileNum==)
{
AfxMessageBox("没有选择缓存文件");
return false;
}
return true;
}
选择文件夹
CString CFileSelectDlg::SelectFolder()
{
TCHAR szFolderPath[] = {};
CString strFolderPath;
BROWSEINFO sInfo;
::ZeroMemory(&sInfo,sizeof(BROWSEINFO));
sInfo.pidlRoot = ;
sInfo.lpszTitle = "请选择缓存文件所在文件夹";
sInfo.ulFlags = BIF_RETURNONLYFSDIRS | BIF_EDITBOX |BIF_DONTGOBELOWDOMAIN;
sInfo.lpfn = NULL; LPITEMIDLIST lpidlBrowse = ::SHBrowseForFolder(&sInfo);
if(lpidlBrowse != NULL)
{
if(::SHGetPathFromIDListA(lpidlBrowse,szFolderPath))
{
strFolderPath = szFolderPath;
}
}
if(lpidlBrowse != NULL)
{
::CoTaskMemFree(lpidlBrowse);
}
return strFolderPath;
}
MFC选择文件(夹)按钮实现的更多相关文章
- MFC 选择文件夹
WCHAR szPath[_MAX_PATH] = {}; BROWSEINFO bi; //指定父窗口,在对话框显示期间,父窗口将被禁用 bi.hwndOwner = this->GetSaf ...
- MFC 打开文件夹选择框并获取文件夹路径
CString FicowGetDirectory() { BROWSEINFO bi; char name[MAX_PATH]; ZeroMemory(&bi, sizeof(BROWSEI ...
- MFC中打开选择文件夹对话框,并将选中的文件夹地址显示在编辑框中
一般用于选择你要将文件保存到那个目录下,此程序还包含新建文件夹功能 BROWSEINFO bi; ZeroMemory(&bi, sizeof(BROWSEINFO)); //指定存放文件的 ...
- MFC弹出选择文件和选择文件夹代码
选择文件夹 TCHAR szSelectedDir[]; BROWSEINFO bi; ITEMIDLIST *il; bi.hwndOwner = m_hWnd; bi.pidlRoot = NUL ...
- NX二次开发-弹出选择文件夹对话框
这个UFUN和NOPEN里没有对应的函数和类,要用C++的方法去做. #include "afxdialogex.h"//弹出选择文件夹对话框头文件 #include " ...
- Delphi 弹出Windows风格的选择文件夹对话框, 还可以新建文件夹
Delphi 弹出Windows风格的选择文件夹对话框, 还可以新建文件夹 unit Unit2; interface uses Windows, Messages, SysUtils, V ...
- C# WINFORM 编程中,选择**文件夹**而不是文件的方法(转)
我们选择文件可以用 OpenFileDialog ,但是文件夹有两种方法. 法一: 用C#的FolderNameEditor类的子类FolderBrowser类来实现获取浏览文件夹对话框的功能.下面来 ...
- C#选择文件、选择文件夹、打开文件
1.选择文件用OpenDialog OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//该值确定是否可以 ...
- VB6 选择文件夹路径
'--------------------------------------------------------------------------------------- ' Module : ...
随机推荐
- Going to university is supposed to be a mind-broadening experience.
Going to university is supposed to be a mind-broadening experience. That assertion is presumably mad ...
- 不用安装Oracle客户端
1 pl/sql developer 1.1 下载解压instantclient-basic-nt-12.1.0.2.0. 1.2 在其目录下新建Network/ADMIN/tnsnames.ora文 ...
- js中的变异数组
[ 'push', 'pop', 'shift', 'unshift', 'splice', 'sort', 'reverse' ] 以上几个数组的方法会改变原数组,称之为数组的变异方法.
- jq 获取下一个兄弟原素 下拉箭头旋转
$('.weui-cells__title').on("click", function(e,rr){ isshow=$(this).attr('isshow') if(issho ...
- asp.net mvc 使用NPOI插件导出excel
/// <summary> /// 交易账单 导出交易列表 /// </summary> /// <returns></returns> public ...
- CodeWarrior 10 自定义关键字模版
==============================================版本信息开始============================================ 相关作 ...
- ajax导出表格数据失败的几处坑
$.ajax({ type:'POST', async:false, url:'/export', data:params, dataType:'json', ... success:function ...
- python note 13 内置函数
1. lst = ["白蛇传","骷髅叹","庄周闲游"] it = lst.__iter__() print(it.__next__()) ...
- k8s中yaml文常见语法
在k8s中,所有的配置都是 json格式的.但为了读写方便,通常将这些配置写成yaml 格式,其运行的时候,还是会靠yaml引擎将其转化为json,apiserver 也仅接受json的数据类型. y ...
- 利用Crosstool-ng制作交叉编译工具链
1.什么是crosstool-ng crosstool-ng,全称是crosstool Next Generation,即下一代crosstool,即crosstool的升级版.那么什么是crosst ...