| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3129 人关注过本帖
标题:怎么去掉保存类型中的“所有文件(*.*)”
取消只看楼主 加入收藏
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
 问题点数:0 回复次数:11 
怎么去掉保存类型中的“所有文件(*.*)”
采用VC作文件的存储读取,自定义了一个文件扩展名(例如dvp),在保存文件时弹出的保存为对话框中的保存类型就会出现两个选项:一个是所有文件(*.*)、一个是刚才定义的类型.dvp。
请问,怎样去掉“所有文件 (*.*)”这个选项啊?只要刚才定义的文件类型。
谢谢了先!
搜索更多相关主题的帖子: 类型 文件 保存 
2006-05-17 11:06
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
谢谢斑竹!
我的是SDI,没有使用到CFileDialog这个类啊,怎么弄呢?
您说的“在建立的时候你可以声明这个单稳当文件可对应一个后缀的文件名”可否详细点?谢谢!
2006-05-18 09:34
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
以下是引用myajax95在2006-5-18 11:40:00的发言:

建立单文档文件的时候第四部点Advance,弹出窗口中File extension里写dvp。

我就是这样做的,但是,在保存或是打开保存的文件时,文件类型里面除了有.dvp外,还有“所有文件 (*.*)”,我是想在打开或者保存文件时,文件类型里面只有.dvp。

2006-05-18 19:11
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
以下是引用WindyGo在2006-5-18 10:18:00的发言:
你可以用向导添加事件的方式解决。
打开“建立类向导”,在你程序的文档类(C*Doc)中添加ID_FILE_OPEN的COMMAND命令,点击“确定”,再点击“确定”。在生成程序代码中添加以下部分:
static char BASED_CODE szFilter[] = ".DVP Files (*.dvp)|*.dvp|";
CFileDialog fileDlg(TRUE, _T("*.dvp"), NULL, OFN_FILEMUSTEXIST | OFN_HIDEREADONLY |
OFN_NONETWORKBUTTON | OFN_PATHMUSTEXIST | OFN_OVERWRITEPROMPT, szFilter, NULL);
if(fileDlg.DoModal()==IDOK)
if (!CDocument::OnOpenDocument(fileDlg.fileDlg.GetPathName()))
AfxMessageBox("Open file faild!");

按照您给的方法,可以实现在打开保存的文件时,文件类型里面只有.dvp了!但是,代码不完整吧?选择了要打开的文件后,点确定,没有导入先前保存的东西呢??

2006-05-18 19:25
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 

谢谢两位高手!
那么对ID_FILE_SAVE也要做类似的处理吗?里面的代码怎么写啊?谢谢了先!

2006-05-18 19:28
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
以下是引用myajax95在2006-5-18 23:41:00的发言:
用5楼的方法就不需要处理。
用2楼或4楼的方法就要把code放在ID_FILE_SAVE里。

谢谢两位耐心指点!!
我采用的是结合上面两种方法,可以吧??

采用5楼的方法,在文件类型里面有自定义文件格式,还有“所有文件(*.*)”;我就想去除“所有文件(*.*)”。我就采用了2楼或4楼的方法,也增加一个处理ID_FILE_SAVE事件的函数,能够去掉保存或者打开时出现的“所有文件(*.*)"了!
但是,还是有一个bug,不能打开保存的文件,WHY?

2006-05-19 10:39
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 

ID_FILE_OPEN的代码是上面4楼的代码,如下:
void CDrawDoc::OnFileOpen()
{
// TODO: Add your command handler code here

////////////////////////////
//my code starts here
////////////////////////////

static char BASED_CODE szFilter[] = "DL Files (*.dl)|*.dl|";
CFileDialog fileDlg(TRUE, _T("*.dvp"), NULL, OFN_FILEMUSTEXIST | OFN_HIDEREADONLY |
OFN_NONETWORKBUTTON | OFN_PATHMUSTEXIST | OFN_OVERWRITEPROMPT, szFilter, NULL);
if(fileDlg.DoModal()==IDOK)
if (!CDocument::OnOpenDocument(fileDlg.GetPathName()))
AfxMessageBox("Open file faild!");

///////////////////////////////
//my code ends here
///////////////////////////////

}

就是闹不懂,打不开保存的文件?

2006-05-19 10:42
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
呵呵~~,贴上贴子,回个头看一下,问题在这里,
szFilter[] = "DL Files (*.dl)|*.dl|";
_T("*.dvp")
类型我改了一下,这里没有改为一致所造成的,晕倒!
问题解决了。
总之,谢谢两位耐心地手把手的教我!
2006-05-19 10:49
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
不好意思呢!我又回来问了,不知道是不是错觉,改了之后,好象成功了一两次,
后来再也不行了,还是打不开文件??
2006-05-19 12:01
天地乾坤
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-11-21
收藏
得分:0 
以下是引用WindyGo在2006-5-19 12:11:00的发言:
我又修改了一下,你加入代码后再试试。

图片附件: 游客没有浏览图片的权限,请 登录注册

2006-05-19 15:18
快速回复:怎么去掉保存类型中的“所有文件(*.*)”
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018353 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved