⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_16320.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:16320 发表者:lhbnj 发表日期:2002-09-27 11:58:03
<br>主题:请教benwolf:
<br>内容:<BR>  如何在文档编辑器中的保存、另存为、打开中支持多种文件类型?<BR>虽说可以通过增加以下代码实现可打开多种文件类型:<BR>&nbsp;&nbsp;&nbsp;&nbsp;pDocTemplate = new CMultiDocTemplate(<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IDR_SAMPLETYPE1,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RUNTIME_CLASS(CSampleDoc),<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RUNTIME_CLASS(CChildFrame), // custom MDI child frame<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RUNTIME_CLASS(CSampleView));<BR>&nbsp;&nbsp;&nbsp;&nbsp;AddDocTemplate(pDocTemplate);<BR>可是,在保存及另存中仍无能为力!<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;先谢了!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:David Wong 回复日期:2002-10-01 22:18:19
<br>内容:MFC的桌面应用的基本编程框架是由应用、文档、视图、框架(对象)和模板五部分组成。<BR>对于初学者有一定的方便,但随着开发者的深入却有一定的限制。<BR>依照上述框架,文档可以对应一个或多个视图,但视图只能对应一个文档。<BR><BR>解决的一般方法是将文件的I/O功能做在一个或多个模块里,然后重载文档的<BR>OnOpenDocument和OnSaveDocument函数,在其中使用一个filter<BR>去判定文件扩展名,并调用相应的I/O操作。<BR><BR>BOOL CXXXDoc::OnOpenDocument(LPCTSTR lpszPathName) <BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString filename(lpszPathName);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString ext(FindExtension(filename));<BR>&nbsp;&nbsp;&nbsp;&nbsp;ext.MakeLower();<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (ext == "") return FALSE;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;int type = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (ext == "bmp")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;......;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;else if (ext=="jpg" || ext=="jpeg")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;......;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;else return FALSE;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;...<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;return TRUE;<BR>}<BR><BR>BOOL CXXXDoc::OnSaveDocument(LPCTSTR lpszPathName) <BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString filename(lpszPathName);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString ext(FindExtension(filename));<BR>&nbsp;&nbsp;&nbsp;&nbsp;ext.MakeLower();<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (ext == "") return FALSE;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;int type = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (ext == "bmp")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;......;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;else if (ext=="jpg" || ext=="jpeg")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;......;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;else return FALSE;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;...<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;return TRUE;<BR>}<BR><BR>你可以看一下MFC的source: docmgr.cpp和doccore.cpp。<BR>了解一下MFC文档、视图、框架(对象)和应用对象的关系。<BR>:)<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:David Wong 回复日期:2002-10-01 22:20:14
<br>内容:大家何谈请教,相互交流,相互鼓励,共同进步!<BR>好不好呀!?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -