COMMAND_HANDLER

COMMAND_HANDLER ( код, код, func )

Параметры

id

[в] Идентификатор элемента меню, контроля или ускоритель.

код

[в] Код уведомления.

func

[в] Имя функции обработчика сообщений.

Примечания

Определяет записи в схеме сообщений. Карты COMMAND_HANDLER сообщения WM_COMMAND указанного обработчика функции, основанные на код уведомления и идентификатор элемента управления. Например

класс CMyClass:...
{
общественности:
 nbsp; ...

BEGI&N_MSG_MAP(CMyClass)
      COMMAND_HANDLER (IDC_MYCTL, EN_CHANGE, OnChange)
      ...
   END_MSG_MAP()

/ / Когда CMyClass объект получает WM_COMMAND
   / / сообщение определенных IDC_MYCTL и EN_CHANGE,
   / / сообщение направляется в CMyClass::OnChange
   / / для фактической обработки.
   LRESULT OnChange (...)
   { ... }

}

Любая функция, указанного в макросе COMMAND_HANDLER необходимо задать следующим:

LRESULT Comm&andHandler(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOLamp; bHandled)

Наборы карт сообщение bHandled в TRUE до CommandHandler называется. Если CommandHandler не полностью обрабатывает сообщение, он должен установить bHandled в значение FALSE , чтобы указать сообщение нуждается в дальнейшей обработки.

Примечаниеnbsp;  Всегда начинаются сообщений карту с BEGI&N_MSG_MAP. Затем можно объявить последующие альтернативные сообщение карты с ALT_MSG_MAP. Макрос END_MSG_MAP знаменует конец схеме сообщений. Каждая схема сообщений должен иметь ровно один экземпляр BEGIN_MSG_MAP и END_MSG_MAP.

В дополнение к COMMAND_HANDLERможно использовать MESSAGE_HANDLER для сопоставления сообщения WM_COMMAND независимо от идентификатор или кода. В этом случае MESSAGE_HANDLER(WM_COMMAND, OnHandlerFunction) будет направлять все сообщения WM_COMMANDOnHandlerFunction.

Дополнительные сведения об использовании схемы сообщений в ATL Отображает сообщение в разделе статьи "Окно классов ATL."

Глобальные функции и макросы ATL

Родственные слова

COMMAND_ID_HANDLER, COMMAND_CODE_HANDLER, COMMAND_RANGE_HANDLER, NOTIFY_HANDLER

Index