您的位置:首页 > 其它

MFC单文档打开文件默认后缀名修改

2013-01-10 14:48 429 查看
转载来源:http://www.iieeg.com/newscon.php?id=2305

做单文档程序时,默认打开文档后缀为(*.*)。如果我们需要自定义打开后缀时,需要对文档模板相关函数做重载。

class CMySingleDocTemplate : public CSingleDocTemplate
{
public:
CMySingleDocTemplate(UINT nIDResource, CRuntimeClass* pDocClass,
CRuntimeClass* pFrameClass, CRuntimeClass* pViewClass):\
CSingleDocTemplate( nIDResource, pDocClass, pFrameClass, pViewClass )
{

}

virtual BOOL GetDocString(CString& rString, enum DocStringIndex index) const
{
if(index == CDocTemplate::filterExt)
{
rString = _T(".test");
}
else if( index == CDocTemplate::fileNewName || index == CDocTemplate::filterName )
{
rString = _T("test(*.test)");
}
else
{
__super::GetDocString(rString,index);
}

return TRUE;
};
};


创建代码修改,CSingleDocTemplate改为CMySingleDocTemplate。

CMySingleDocTemplate* pDocTemplate;
pDocTemplate = new CMySingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CMCDemoDoc),
RUNTIME_CLASS(CMainFrame),       // main SDI frame window
RUNTIME_CLASS(CMC3DView));
if (!pDocTemplate)
return FALSE;


则打开文件,默认类型为自定义的后缀。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: