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


Создание шаблонов документов

При создании нового документа в ответ на команду "Создать " или "Открыть " из меню "Файл " шаблон документа также создает новое окно фрейма, с помощью которого можно просмотреть документ.

Конструктор шаблона документа указывает, какие типы документов, окон и представлений шаблон сможет создать. Это определяется аргументами, которые передаются конструктору шаблона документа. Следующий код иллюстрирует создание CMultiDocTemplate для примера приложения:

CMultiDocTemplate* pDocTemplate;
pDocTemplate = new CMultiDocTemplate(IDR_CMyDocTypeTYPE,
   RUNTIME_CLASS(CMyDoc),
   RUNTIME_CLASS(CChildFrame), // custom MDI child frame
   RUNTIME_CLASS(CMyView));
if (!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);

Указатель на новый CMultiDocTemplate объект используется в качестве аргумента AddDocTemplate. Аргументы CMultiDocTemplate конструктора включают идентификатор ресурса, связанный с меню и акселераторами типа документа, и три использования макроса RUNTIME_CLASS . RUNTIME_CLASSвозвращает объект CRuntimeClass для класса C++ с именем в качестве аргумента. CRuntimeClass Три объекта, переданные конструктору шаблона документа, предоставляют сведения, необходимые для создания новых объектов указанных классов во время процесса создания документа. В примере показано создание шаблона документа, создающего CScribDoc объекты с присоединенными CScribView объектами. Представления обрамляются стандартными окнами дочерних фреймов MDI.

См. также

Шаблоны документов и процесс создания документа или представления
Создание документа и представления
Отношения между объектами MFC
Создание документов, окон и представлений