Многооконное приложение строится с использованием большего числа классов, чем однооконное приложение. Помимо классов главного окна и классов окон просмотра документов в нем определен еще один класс, непосредствено связанный с отображением дочерних окон MDI. Этот класс называется CChildFrame, и он наследуется от базового класса CMDIChildWnd, определенного в библиотеке MFC.
Объекты класса CChildFrame представляют дочерние окна MDI главного окна приложения. Внутри этих окон отображаются окна просмотра документов.
Чаще всего приложения не вносят изменений в класс дочернего MDI-окна.
Конструктор и деструктор класса. MFC AppWizard определяет для класса CChildFrame конструктор и деструктор. По умолчанию они не выполняют никаких действий. Их можно изменить для выполнения инициализации объектов класса дочернего окна.
Таблица сообщений класса. По умолчанию таблица сообщений не содержит обработчиков сообщений. При необходимости можно добавить обработку каких-либо сообщений с использованием ClassWizard.
Метод PreCreateWindow. Метод PreCreateWindow определен в классе CWnd. Он вызывается непосредственно перед созданием окна, связанного с объектом класса. В качестве параметра этому методу передается структура типа CREATESTRUCT, определяющая характеристики создаваемого окна. Приложение может изменить данные, записанные в этой структуре, чтобы переопределить стили создаваемого окна и повлиять на внешний вид создаваемого окна.
MFC AppWizard переопределяет этот метод, но не вносит в него в изменений и просто вызывает метод PreCreateWindow базового класса CMDIChildWnd.
Методы AssertValid и Dump. Для отладочной версии приложения класс CChildFrame содержит переопределения виртуальных методов AssertValid и Dump. Эти методы определены в базовом классе CObject и используются при отладке приложения.