Поделиться через


CSingleDocTemplate::CSingleDocTemplate

Создает объект CSingleDocTemplate.

CSingleDocTemplate( 
   UINT nIDResource, 
   CRuntimeClass* pDocClass, 
   CRuntimeClass* pFrameClass, 
   CRuntimeClass* pViewClass  
);

Параметры

  • nIDResource
    Указывает идентификатор ресурсов, используемых с типом документа. Это может включать меню, значок таблицы сочетаний клавиш и строковые ресурсы.

    Строковый ресурс состоит из до 7 подстрок, разделенных знаком ""\ 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

    Можно изменить эту строку с помощью редактора строк; вся строка отображается как один ввод в редакторе строк, а не 7 отдельных записей.

    Дополнительные сведения об этих типах ресурсов см. в разделе Редактор зашнуруйте.

  • pDocClass
    Указатель на объект CRuntimeClass документа классифицируют. Этот класс CDocument- производный класс можно указать, чтобы представить документы.

  • pFrameClass
    Указатель на объект CRuntimeClass фреймового окна классифицируют. Этот класс может быть CFrameWnd- это производный класс или само по себе могут быть CFrameWnd если требуется расширение функциональности по умолчанию для основного фреймового окна.

  • pViewClass
    Указатель на объект CRuntimeClass представления классифицируют. Этот класс CView- производный класс указываемые для отображения конкретных документов.

Заметки

Динамически выберите объект CSingleDocTemplate и передайте его в CWinApp::AddDocTemplate из InitInstance функции-члена класса приложения.

Пример

// 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