CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

如何使用CFileDialog?

楼主rushing(勇敢的心)2001-10-16 15:44:00 在 VC/MFC / 基础类 提问

最好有例子。  
  我在View里随便定义了一个,编译竟然出错?  
  问题点数:50、回复次数:11Top

1 楼goldolphin(心向天空)回复于 2001-10-16 15:57:29 得分 20

构造函数原型如下:  
  CFileDialog(   BOOL   bOpenFileDialog,   LPCTSTR   lpszDefExt   =   NULL,   LPCTSTR   lpszFileName   =   NULL,   DWORD   dwFlags   =   OFN_HIDEREADONLY   |   OFN_OVERWRITEPROMPT,   LPCTSTR   lpszFilter   =   NULL,   CWnd*   pParentWnd   =   NULL   );  
  参数有点复杂,最好查一下MSDN。  
  Top

2 楼wmouse(山水)回复于 2001-10-16 15:58:34 得分 0

你是怎么定义的?Top

3 楼rushing(勇敢的心)回复于 2001-10-16 16:08:21 得分 0

我知道了,  
  应该这样定义:  
  CFileDialog   fileDlg(True);  
   
  以前我没写True  
   
  然后该这样使用呢?  
  Top

4 楼hutyn(微波荡漾)回复于 2001-10-16 16:08:22 得分 0

最简单的可以这样:  
  CFileDialog   myDlg(true   or   false);  
  Top

5 楼rushing(勇敢的心)回复于 2001-10-16 16:10:55 得分 0

我还想把文件内容读进来。  
  Top

6 楼hutyn(微波荡漾)回复于 2001-10-16 16:11:16 得分 0

其中   m_ofn   结构体所包含的信息非常重要,比如对话框标题,文件属性等等都可得到和进行操作,非常方便!Top

7 楼hutyn(微波荡漾)回复于 2001-10-16 16:12:26 得分 0

文件内容,你是指什么?Top

8 楼rushing(勇敢的心)回复于 2001-10-16 16:32:41 得分 0

比如,文件中的二进制字符,字符串,图形等等。  
  Top

9 楼wmouse(山水)回复于 2001-10-16 17:06:07 得分 0

那要有专门的读文件过程,我还不知道通过CFileDialog读取,可以  
  if(myDlg.DoModal()==IDOK)  
  {  
        //读去文件内容,接着做相应操作  
  }Top

10 楼hutyn(微波荡漾)回复于 2001-10-16 17:35:38 得分 20

CFileDialog   只能获取要打开或存储的文件名,或者设置一些属性等一些非常通用和基本的东东,但不能直接读取文件本身内容的,因为它只是个Dialog嘛!  
  要读取文件内容,必须自己编写相应操作。Top

11 楼kingzai(stevenzhu)回复于 2001-10-16 17:41:44 得分 10

给你一个例子:  
  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);  
  }Top

相关问题

  • 如何使用CFileDialog类。
  • 菜问题:如何声明并使用CFileDialog对话框?
  • Win32 Applicate的工程中,如何使用CDialog或CFileDialog产生对话框类
  • 使用CFileDialog时,如何得知目前选择的文件的后缀名?
  • 请问:使用CFileDialog调用打开对话框,如何设置一个初始路径?比如"d:\app\" 谢谢
  • 一个关于CFileDialog使用的问题
  • fopen和CFileDialog使用时不兼容
  • 关于使用CFileDialog,我想使用“另存为……”
  • 如何使用JDK1.2.1?
  • 如何使用"和'

关键词

  • 文件
  • 内容
  • null
  • cfiledialog
  • dwversion
  • ofn
  • lpctstr
  • true

得分解答快速导航

  • 帖主:rushing
  • goldolphin
  • hutyn
  • kingzai

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo