共用方式為


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

請參閱

參考

CSingleDocTemplate 類別

階層架構圖

CDocTemplate::GetDocString

CWinApp::AddDocTemplate

CWinApp::InitInstance

CRuntimeClass 結構

RUNTIME_CLASS