cfiledialog怎么用CFileDialog 选择文件夹

cfiledialog  时间:2021-07-16  阅读:()

MFC 单文档中CFileDialog的具体用法步骤

用CFileDialog dlg(FALSE,NULL,NULL,NULL,NULL);我这里也没有报错,但参数里并不是全NULL,里面有个dwFlags,默认参数并不是为NULL。

很懂cfiledialog的来一下 啊! 就是简单的,可以实现文件的打开和保存就可以;了!

打开TXT文档 void fileopen() { CFileDialog fileDlg(TRUE); fileDlg.m_ofn.lpstrTitle="我的文件打开对话框"; fileDlg.m_ofn.lpstrFilter="Text Files(*.txt)*.txtAll Files(*.*)*.*"; if(IDOK==fileDlg.DoModal()) { CFile file(fileDlg.GetFileName(),CFile::modeRead); char *pBuf; DWORD dwFileLen; dwFileLen=file.GetLength(); pBuf=new char[dwFileLen+1]; pBuf[dwFileLen]=0; file.Read(pBuf,dwFileLen); file.Close(); MessageBox(pBuf); } } 保存TXT文档 void filesave() { CFileDialog fileDlg(FALSE); fileDlg.m_ofn.lpstrTitle="我的文件保存对话框"; fileDlg.m_ofn.lpstrFilter="Text Files(*.txt)*.txtAll Files(*.*)*.*"; fileDlg.m_ofn.lpstrDefExt="txt"; if(IDOK==fileDlg.DoModal()) { CFile file(fileDlg.GetFileName(),CFile::modeCreate | CFile::modeWrite); file.Write("文件内容",strlen("文件内容")); file.Close(); } }

CFileDialog dlg(true,NULL,NULL,OFN_OVERWRITEPROMPT,"bmp(*.bmp)|*.bmp||",NULL);

CFileDialog::CFileDialog CFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL ); 参数: bOpenFileDialg 如果为TRUE, 则创建文件打开对话框;如果为FALSE,则构造一个File Save As(另存为)对话框。

lpszDefExt 缺省文件扩展名,如果用户在文件名编辑框中不包含扩展名,则lpszDefExt定义的扩展名自动加到文件名后。

如果为NULL,则不添加扩展名。

lpszFileName 初始显示于文件名编辑框中的文件名,如果为NULL,则不显示初始文件名。

dwFlags 一个或多个标志的组合,使你可定制对话框。

要了解这些标志的描述,可参阅联机文档“Win32 SDK”中的OPENFILENAME结构。

如果你改变m_ofn.Flags结构成员,在改变中用OR操作保持缺省行为完整。

lpszFilter 一列字符串对,指定可以应用到文件的过滤器。

如果指定过滤器,仅被选择的文件显示于文件列表框中。

请参阅说明部分,了解如何使用过滤器。

pParentWnd 指向文件对话框对象的父窗口或拥有者窗口。

说明: 调用此成员函数构造一个标准Windows文件对话框对象,或构造一个打开对话框或构造一个存盘对话框,根据bOpenFileDialog的值决定。

OFN_ALLOWMULTISELECT标志。

你应提供文件名缓冲区来放置返回的多个文件名的列表,这通过用一个分配了的缓冲区指针替换m_ofn.lpstrFile来实现,要在创建了CFileDialog之后调用DoModal之前进行此操作。

另外,必须用m_ofn.lpstrFile指向的缓冲区字节数来设置m_ofn.nMaxFile。

为使用户用鼠标或键盘改变一个Explorer风格对话框的大小,设置OFN_ENABLESIZING标志,这仅当你提供一个钩子进程或定制模板时才有必要设置。

此标志仅与一个Explorer风格的对话框一起工作,旧风格的对话框不可改变大小。

lpszFilter参数用于判断文件名类型及文件列表框中哪些可被显示。

双字符串的第一个字符串描述过滤器,第二个串表明使用的文件扩展名,多重扩展可用“;”来指定。

字符串由两个“|”字符结尾,最后是一个NULL。

也可使用CString对象作为参数。

例如,Mirosoft Excel 允许用户用.XLC扩展名(表)或.XLS(工作表)打开文件,Excel过滤器应如下: static char BASED_CODE szFilter[] = "Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";

调用CfileDialog时为什么说我未定义?

首先考虑是否正确添加了相关的头文件(afxdlgs.h)(应该自动添加的才对) 然后查看源文件中添加的头文件的排列顺序,这往往是导致问题的一个原因 尤其头文件之间有互相嵌套时。

提醒一下,编译错误一般只做参考,也就是出错了,但并不一定就是编译器提示的出错位置,需要根据经验和代码实际情况查看 如果我上述的提示不能解决问题,可以的话,建议你贴出部分出错代码,可以帮你辅助分析

怎么用CFileDialog 选择文件夹

不能用CFileDialog 用::SHBrowseForFolder才行 例子: BROWSEINFO bi; bi.hwndOwner=NULL; bi.pidlRoot=NULL; bi.pszDisplayName=NULL; bi.lpszTitle=NULL; bi.ulFlags=0; bi.lpfn =NULL; bi.iImage =0; LPCITEMIDLIST pidl=SHBrowseForFolder(&bi); if(!pidl) return; TCHAR szDisplayName[255]; SHGetPathFromIDList(pidl,szDisplayName); CString str(szDisplayName); MessageBox(str,NULL,MB_OK);

hostkey荷兰/俄罗斯机房,GPU服务器

hostkey应该不用说大家都是比较熟悉的荷兰服务器品牌商家,主打荷兰、俄罗斯机房的独立服务器,包括常规服务器、AMD和Intel I9高频服务器、GPU服务器、高防服务器;当然,美国服务器也有,在纽约机房!官方网站:https://hostkey.com/gpu-dedicated-servers/比特币、信用卡、PayPal、支付宝、webmoney都可以付款!CPU类型AMD Ryzen9 ...

Buyvm:VPS/块存储补货1Gbps不限流量/$2起/月

BuyVM测评,BuyVM怎么样?BuyVM好不好?BuyVM,2010年成立的国外老牌稳定商家,Frantech Solutions旗下,主要提供基于KVM的VPS服务器,数据中心有拉斯维加斯、纽约、卢森堡,付费可选强大的DDOS防护(月付3美金),特色是1Gbps不限流量,稳定商家,而且卢森堡不限版权。1G或以上内存可以安装Windows 2012 64bit,无需任何费用,所有型号包括免费的...

RackNerd新上圣何塞、芝加哥、达拉斯、亚特兰大INTEL系列,$9.49/年

racknerd怎么样?racknerd商家最近促销三款美国便宜vps,最低只需要9.49美元,可以选择美国圣何塞、西雅图、纽约和芝加哥机房。RackNerd是一家成立于2019年的美国高性价比服务器商家,主要从事美国和荷兰数据中心的便宜vps、独立服务器销售!支持中文工单、支持支付宝和微信以及PayPal付款购买!点击直达:racknerd官方网站INTEL系列可选机房:加利福尼亚州圣何塞、芝加...

cfiledialog为你推荐
0x800700050x80070005是怎么回事?fcloseC语言文件关闭函数fclose(文件指针)是什么?arc是什么意思arcsin中arc是什么的缩写? 怎么读? ?spawningVC中Error spawning cl.exe错误的解决方法.cf加速器玩CF需要用加速器吗?mediasres什么意思qq业务中心QQ业务怎么开通?暴力破解密码8位密码暴力破解要多久新手怎么制作表格怎么样在电脑上制作表格初学者12306注册铁路12306怎么注册用户名
美国linux主机 免费申请网站域名 krypt 新世界机房 优key 国外网站代理服务器 七夕促销 php空间推荐 免费全能主机 服务器是干什么的 linux使用教程 跟踪路由命令 vul 中国电信网络测速 lamp架构 主机返佣 空间申请 大化网 香港ip 美国主机侦探 更多