如何使用CFileDialog?

rushing 北京算通科技发展股份有限公司 CTO/CIO/技术总监  2001-10-16 03:44:00
最好有例子。
我在View里随便定义了一个,编译竟然出错?
...全文
119 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
kingzai 2001-10-16
给你一个例子:
CFileDialog filedlg(TRUE);
//
int structsize=0;
DWORD dwVersion;
//检测目前的操作系统,GetVersion具体用法详见MSDN
dwVersion=GetVersion();
// 如果运行的操作系统是Windows NT/2000
if(dwVersion<0x80000000)
structsize=88;//显示新的文件对话框
else
//运行的操作系统Windows 95/98
structsize =76;//显示老的文件对话框
//
filedlg.m_ofn.lStructSize=structsize;
if(filedlg.DoModal()==IDOK)
{
m_strFile=filedlg.GetPathName();
UpdateData(FALSE);
}
回复
hutyn 2001-10-16
CFileDialog 只能获取要打开或存储的文件名,或者设置一些属性等一些非常通用和基本的东东,但不能直接读取文件本身内容的,因为它只是个Dialog嘛!
要读取文件内容,必须自己编写相应操作。
回复
wmouse 2001-10-16
那要有专门的读文件过程,我还不知道通过CFileDialog读取,可以
if(myDlg.DoModal()==IDOK)
{
//读去文件内容,接着做相应操作
}
回复
rushing 2001-10-16
比如,文件中的二进制字符,字符串,图形等等。
回复
hutyn 2001-10-16
文件内容,你是指什么?
回复
hutyn 2001-10-16
其中 m_ofn 结构体所包含的信息非常重要,比如对话框标题,文件属性等等都可得到和进行操作,非常方便!
回复
rushing 2001-10-16
我还想把文件内容读进来。
回复
hutyn 2001-10-16
最简单的可以这样:
CFileDialog myDlg(true or false);
回复
rushing 2001-10-16
我知道了,
应该这样定义:
CFileDialog fileDlg(True);

以前我没写True

然后该这样使用呢?
回复
wmouse 2001-10-16
你是怎么定义的?
回复
goldolphin 2001-10-16
构造函数原型如下:
CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL );
参数有点复杂,最好查一下MSDN。
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2001-10-16 03:44
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……