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


После обновления называются обработчики

Предположим, что пользователь щелкает мышью в меню Файл, который создает сообщение WM_INITMENUPOPUP.Механизм обновления платформы в совокупности обновляет все элементы в меню Файл, прежде чем раскрывающемся меню поэтому пользователь может видеть его.

Чтобы сделать это, маршруты границ обновить команды для всех пунктов меню в всплывающем меню по стандартной маршрутизации команд.Целевые объекты команд маршрутизации имеют возможность обновления всех пунктов меню, сопоставляя команде обновления с соответствующей записью сообщение-сопоставления (формы ON_UPDATE_COMMAND_UI) и вызвать функцию обработчика «обновление».Таким образом, для меню с 6 точек меню команд обновления 6 отправляются вне.Если средство обновления существует для идентификатора команды пункта меню, то он вызывается, чтобы выполнить обновление.Если платформа не проверяют наличие обработчика, идентификатор команды и включают или отключить пункт меню.

Если границы не найти запись ON_UPDATE_COMMAND_UI во время маршрутизации команд, они автоматически включают объект интерфейса пользователя, если запись ON_COMMAND расположения с тем же идентификатором командыВ противном случае он блокирует объект интерфейса пользователя.Поэтому, чтобы обеспечить объект интерфейса пользователя включен, предоставьте обработчик команды создает объект или предоставьте обработчик обновления.См. рисунок в разделе Объекты интерфейса пользователя и идентификаторы команд.

Можно запретить по умолчанию отключить объектов интерфейса пользователя.Дополнительные сведения см. в разделе m_bAutoMenuEnable члена класса CFrameWnd в справочнике по MFC.

Автоматическая инициализация меню в области действия, происходящие, когда приложение получает сообщение WM_INITMENUPOPUP.Во время неработающего границы цикла, поиск маршрутизации команд для обработчиков обновления кнопки точно так же, как и для меню.

См. также

Основные понятия

Практическое руководство. Объекты обновления интерфейса пользователя