CSingleDocTemplate::CSingleDocTemplate
建構 CSingleDocTemplate 物件。
CSingleDocTemplate(
UINT nIDResource,
CRuntimeClass* pDocClass,
CRuntimeClass* pFrameClass,
CRuntimeClass* pViewClass
);
參數
nIDResource
指定資源的 ID 搭配文件類型。 這可能包括功能表、圖示、快速鍵對應表和字串資源。資源字串包含" \ n "字元所分隔的子字串七個字元 (" \ n 字元必須做為預留位置,如果子字串不包含在內,不過,結尾的" \ n 字元不是必要的),這些子字串描述文件類型。 如需子字串的詳細資訊,請參閱 CDocTemplate::GetDocString。 這個字串資源在應用程式的資源檔中。 例如:
// MYCALC.RC
STRINGTABLE PRELOAD DISCARDABLE
BEGIN
IDR_MAINFRAME "MyCalc Windows Application\nSheet\nWorksheet\n Worksheets (*.myc)\n.myc\nMyCalcSheet\n MyCalc Worksheet"
END
使用字串編輯器,您可以編輯這個字串相同,整個字串會顯示為字串編輯器中的單一項目,而在中則不同型別。
如需這些資源類型的詳細資訊,請參閱 字串編輯器。
pDocClass
in 文件的 CRuntimeClass 指向類別的物件。 這個類別是 CDocument-您定義用以代表文件的衍生類別。pFrameClass
是框架視窗的 CRuntimeClass 指向類別的物件。 這個類別可 CFrameWnd衍生類別也可以是 CFrameWnd ,或者如果您想要主框架視窗的預設行為。pViewClass
對檢視的 CRuntimeClass 指向類別的物件。 這個類別是 CView-您定義顯示您的文件中的衍生類別。
備註
動態配置一個 CSingleDocTemplate 物件並將它與您的應用程式類別的 InitInstance 成員函式的 CWinApp::AddDocTemplate 。
範例
// The following code fragment is from CMyWinApp::InitInstance.
// CMyWinApp is derived from CWinApp.
// Establish the document type
// supported by the application
AddDocTemplate(new CSingleDocTemplate(IDR_MAINFRAME,
RUNTIME_CLASS(CMyDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CMyView)));
// The following code fragment is from CMyWinApp::InitInstance.
// CMyWinApp is derived from CWinApp.
// Normally, an application creates a document
// template and registers it with MFC as a part
// of its initialization.
// IDR_SAMPLERESOURCE is a resource ID string;
// see the CDocTemplate class overview documentation
// for more information on its format.
// The next three parameters use the RUNTIME_CLASS()
// macro to get runtime type information for the doc,
// frame, and view classes that will be associated by
// the template.
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,
RUNTIME_CLASS(CMyDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CMyView));
if (!pDocTemplate)
return FALSE;
// After the following call, MFC is aware of the doc
// template and will free it when the application is
// shut down. The doc templates known to MFC will
// automatically be used when CWinApp:OnFileOpen() or
// CWinApp::OnFileNew() are called.
AddDocTemplate(pDocTemplate);
需求
Header: afxwin.h