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