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


Создание окон фрейма документа

Создание документа и представления показывает, как объект CDocTemplate управляет созданием окна фрейма, документа и просмотра и подключения к ним вместе. Три аргумента CRuntimeClass конструктора CDocTemplate указывают окно кадра, документ и классы просмотра, которые шаблон документа создает динамически в ответ на пользовательские команды, такие как новая команда в меню "Файл" или команда "Создать окно" в меню окна MDI. Шаблон документа сохраняет эти сведения для последующего использования при создании окна фрейма для представления и документа.

Чтобы механизм RUNTIME_CLASS работал правильно, производные классы окна кадров должны быть объявлены с помощью макроса DECLARE_DYNCREATE. Это связано с тем, что платформа должна создавать окна фреймов документов с помощью динамического механизма построения класса CObject.

Когда пользователь выбирает команду, которая создает документ, платформа вызывает шаблон документа для создания объекта документа, его представления и окна кадра, отображающего представление. При создании окна фрейма документа шаблон документа создает объект соответствующего класса — класс, производный от CFrameWnd для приложения SDI или CMDIChildWnd для приложения MDI. Затем платформа вызывает функцию элемента LoadFrame объекта frame, чтобы получить сведения о создании из ресурсов и создать окно Windows. Платформа присоединяет дескриптор окна к объекту frame-window. Затем он создает представление в качестве дочернего окна окна фрейма документа.

Используйте осторожность при выборе момента инициализации производного CWndобъекта.

Что вы хотите узнать больше о

См. также

Использование окон фрейма