Управление меню, панелями элементов управления и ускорителями

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

Управление менюми

Окно кадра участвует в обновлении элементов пользовательского интерфейса с помощью механизма ON_UPDATE_COMMAND_UI, описанного в разделе "Обновление объектов пользовательского интерфейса". Кнопки на панелях инструментов и других панелях управления обновляются во время цикла простоя. Элементы меню в раскрывающихся меню в строке меню обновляются непосредственно перед раскрывающимся меню.

Для приложений MDI окно кадров MDI управляет строкой меню и подпись. Окно фреймов MDI принадлежит одному меню по умолчанию, которое используется в качестве строки меню, если нет активных дочерних окон MDI. Если есть активные дочерние элементы, панель меню окна фрейма MDI перенаправляются в меню для активного дочернего окна MDI. Если приложение MDI поддерживает несколько типов документов, таких как документы диаграммы и листа, каждый тип помещает собственные меню в строку меню и изменяет подпись основного окна кадров.

CMDIFrameWnd предоставляет реализации по умолчанию для стандартных команд в меню "Окно", которое отображается для приложений MDI. В частности, команда New Window (ID_WINDOW_NEW) реализуется для создания нового окна фрейма и просмотра текущего документа. Эти реализации необходимо переопределить только в том случае, если требуется расширенная настройка.

Несколько дочерних окон MDI одного типа документа совместно используют ресурсы меню меню. Если несколько дочерних окон MDI создаются с помощью одного шаблона документа, они могут использовать один и тот же ресурс меню, сохраняя системные ресурсы в Windows.

Управление строкой состояния

Окно кадров также размещает строку состояния в клиентской области и управляет индикаторами строки состояния. Окно фрейма очищает и обновляет область сообщения в строке состояния при необходимости и отображает строки запроса, так как пользователь выбирает элементы меню или кнопки панели инструментов, как описано в разделе "Отображение сведений о команде" в строке состояния.

Управление акселераторами

Каждое окно кадра поддерживает необязательную таблицу акселератора, которая выполняет автоматический перевод акселератора клавиатуры. Этот механизм упрощает определение клавиш акселератора (также называемых сочетаниями клавиш), которые вызывают команды меню.

См. также

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