cfiledialog可以提供一个CFileDialog类的实例吗

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

C++中 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??一列字符串对,指定可以应用到文件的过滤器。

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

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

参数格式如: "Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";文件类型说明和扩展名间用 | 分隔,同种类型文件的扩展名间可以用 ; 分割,每种文件类型间用 | 分隔,末尾用 || 指明。

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

? 要使用CFileDialog,首先用构造函数构造一个对象,当创建了一个对话框后,可以设置或修改m_ofn结构中的值来初始化对话框控件的值或状态。

初始化对话框控件后,调用DoModal成员函数显示对话框并使用户输入路径和文件。

重要函数: CString CFileDialog::GetPathName( ) 得到完整的文件名(包括目录名和扩展名)如c:/test/test1.txt? CString CFileDialog::GetFileName( ) 得到完整的文件名(包括扩展名).如test1.txt CString CFileDialog::GetExtName( ) 得到完整的文件扩展名,如txt? CString CFileDialog::GetFileTitle ( ) 得到完整的文件名,不包括目录名和扩展名,如test1? POSITION CFileDialog::GetStartPosition( ) 对于选择了多个文件的情况得到第一个文件的位置。

? CString CFileDialog::GetNextPathName( POSITION& pos ) 对于选择了多个文件的情况得到下一个文件位置,并同时返回当前文件名。

但必须已经调用过POSITION CFileDialog::GetStartPosition( )来得到最初的POSITION变量。

打开大量文件: 使用CFileDialog类并设置OFN_ALLOWMULTISELECT标志时,OPENFILENAME结构体的lpstrFile成员是一个指向用户申请分配的缓冲区,里面接受所选的路径和文件名列表,这个列表的每一项由一个NULL隔开,最末以两个NULL结束。

nMaxFile成员指明了缓冲区的大小,如果所选择的文件名的加起来的总长度超过了此值,则DoModal函数返回IDCANCEL,如果用户试图打开超过缓冲区大小的文件集的话,CommDlgExtendedError()将返回FNERR_BUFFERTOOSMALL,这时候,lpstrFile的前两个byte将会包含实际需要的缓冲区的字节数。

lpstrFile缓冲区字节数限制:??? ??? 1 在Windows 95/98/Me下只能在ANSI下使用,且没有大小限制; ??? 2 在Windows NT 4.0及更早版本下,被限制在32k字节以内; ??? 3 在Windows 2000/XP版本下,MSDN中介绍说在ANSI下32k字节,Unicode下没有限制。

但是,实际上两者都被限制在32k字节以内;

如何初始化cfiledialog对象

"文本文件(*.txt) " |*.txt|word文件(*.doc)|*.doc||" 中间多了一个双引号。

中间的双引号去掉试试。

可以提供一个CFileDialog类的实例吗

给你个打开的例子 CString str; CFileDialog dlg(TRUE); if(IDOK==dlg.DoModal()) str=dlg.GetPathName(); MessageBox(str); 就是这个意思,构造dlg对象的时候可以加更多的参数,我只是意思一下

王小玉网-美国洛杉矶2核4G 20元/月,香港日本CN2 2核2G/119元/季,美国300G高防/80元/月!

 活动方案:美国洛杉矶 E5 2696V2 2核4G20M带宽100G流量20元/月美国洛杉矶E5 2696V2 2核4G100M带宽1000G流量99元/季香港CN2 E5 2660V2 2核2G30M CN2500G流量119元/季日本CN2E5 2660 2核2G30M CN2 500G流量119元/季美国300G高防 真实防御E5 2696V2 2核2G30M...

Digital-VM暑期全场六折优惠,8个机房

Digital-VM商家目前也在凑热闹的发布六月份的活动,他们家的机房蛮多的有提供8个数据中心,包括日本、洛杉矶、新加坡等。这次六月份的促销活动全场VPS主机六折优惠。Digital-VM商家还是有一点点特点的,有提供1Gbps和10Gbps带宽的VPS主机,如果有需要大带宽的VPS主机可以看看。第一、商家优惠码优惠码:June40全场主机六折优惠,不过仅可以月付、季付。第二、商家VPS主机套餐1...

HostMem,最新优惠促销,全场75折优惠,大硬盘VPS特价优惠,美国洛杉矶QuadraNet机房,KVM虚拟架构,KVM虚拟架构,2核2G内存240GB SSD,100Mbps带宽,27美元/年

HostMem近日发布了最新的优惠消息,全场云服务器产品一律75折优惠,美国洛杉矶QuadraNet机房,基于KVM虚拟架构,2核心2G内存240G SSD固态硬盘100Mbps带宽4TB流量,27美元/年,线路方面电信CN2 GT,联通CU移动CM,有需要美国大硬盘VPS云服务器的朋友可以关注一下。HostMem怎么样?HostMem服务器好不好?HostMem值不值得购买?HostMem是一家...

cfiledialog为你推荐
微信收款语音播报怎么设置两部手机微信收款语音播报怎么设置wmiprvsewmiprvse.exe能禁用吗bindserviceonserviceconnected什么时候执行tvosTVOS系统是什么?mediasres什么意思mediasRES代表什么意思数据分析报告范文如何做一个好的数据分析报告新手怎么制作表格我是初学者、电脑上怎么制作表格中科红旗Linux完全开源吗?中科红旗破产,对Linux有影响吗?基础设施即服务基础设施行业的定义是什么?具体包含哪些行业?
虚拟主机试用 便宜vps 域名解析服务器 罗马假日广场 site5 highfrequency 便宜域名 美国主机推荐 godaddy优惠码 免费ftp空间 日本空间 500m空间 卡巴斯基官方免费版 申请个人网站 服务器合租 百度云1t 息壤代理 创建邮箱 摩尔庄园注册 阿里云个人邮箱 更多