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


Несколько интерфейсов документов

[Многие новые и промежуточные пользователи не могут научиться использовать приложения MDI. Поэтому следует рассмотреть другие модели для пользовательского интерфейса. Однако MDI можно использовать для приложений, которые не легко вписываются в существующую модель.]

Интерфейс многодокументного документа (MDI) — это спецификация, которая определяет пользовательский интерфейс для приложений, которые позволяют пользователю работать с несколькими документами одновременно.

В этом разделе

Тема Описание
о интерфейса нескольких документов Описывает интерфейс нескольких документов.
использование интерфейса нескольких документов Объясняет, как выполнять задачи, связанные с интерфейсом нескольких документов.
Справочник по MDI Содержит ссылку на API.

Функции MDI

Имя Описание
CreateMDIWindow Создает дочернее окно MDI.
DefFrameProc Предоставляет обработку по умолчанию для любых сообщений окна, которые процедура окна окна окна MDI не обрабатывает. Все сообщения окна, которые явно не обрабатываются процедурой окна, должны передаваться функции DefFrameProc, а не функции DefWindowProc.
DefMDIChildProc Предоставляет обработку по умолчанию для любого сообщения окна о том, что процедура окна дочернего окна MDI не обрабатывается. Сообщение окна, не обработанное процедурой окна, должно быть передано функции DefMDIChildProc, а не функции DefWindowProc.
TranslateMDISysAccel Обрабатывает нажатия клавиш акселератора для команд меню окна дочерних окон MDI, связанных с указанным окном клиента MDI. Функция преобразует WM_KEYUP и WM_KEYDOWN сообщения в WM_SYSCOMMAND сообщения и отправляет их в соответствующие дочерние окна MDI.

Сообщения MDI

Имя Описание
WM_MDIACTIVATE Отправляется в окно клиента MDI, чтобы указать окне клиента активировать другое дочернее окно MDI.
WM_MDICASCADE Отправляется в окно клиента MDI, чтобы упорядочить все дочерние окна в каскадном формате.
WM_MDICREATE Отправляется в окно клиента MDI для создания дочернего окна MDI.
WM_MDIDESTROY Отправляется в окно клиента MDI, чтобы закрыть дочернее окно MDI.
WM_MDIGETACTIVE Отправляется в окно клиента MDI, чтобы получить дескриптор активного дочернего окна MDI.
WM_MDIICONARRANGE Отправляется в окно клиента MDI, чтобы упорядочить все свернутые дочерние окна MDI. Это не влияет на дочерние окна, которые не свернуты.
WM_MDIMAXIMIZE Отправляется в окно клиента MDI, чтобы развернуть дочернее окно MDI. Система изменяет размер дочернего окна, чтобы его клиентская область заполняла окно клиента. Система помещает значок меню окна дочернего окна в самое правое положение строки меню окна фрейма и помещает значок восстановления дочернего окна в самое левое положение. Система также добавляет текст заголовка дочернего окна к окну фрейма.
WM_MDINEXT Отправляется в окно клиента MDI, чтобы активировать следующее или предыдущее дочернее окно.
WM_MDIREFRESHMENU Отправляется в окно клиента MDI для обновления меню окна фрейма MDI.
WM_MDIRESTORE Отправляется в окно клиента MDI для восстановления дочернего окна MDI из развернутого или свернутого размера.
WM_MDISETMENU Отправлено в клиентское окно MDI, чтобы заменить все меню окна фрейма MDI, заменить меню окна окна или обоих.
WM_MDITILE Отправляется в окно клиента MDI, чтобы упорядочить все дочерние окна MDI в формате плитки.

Структуры MDI

Имя Описание
MDICREATESTRUCT Содержит сведения о классе, заголовке, владельце, расположении и размере дочернего окна MDI.