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


NOTIFY_HANDLER

Определяет запись в сопоставлении сообщений.

NOTIFY_HANDLER( 
   id, 
   cd, 
   func  
)

Параметры

  • id
    [in] Идентификатор элемента управления, отправляющий сообщение.

  • cd
    [in] Код уведомлений.

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

Заметки

NOTIFY_HANDLER сопоставляет сообщение WM_NOTIFY к определенной функции обработчика, основанный на коде уведомления и идентификаторе элемента управления.

Любую функцию, определенную в макросе NOTIFY_HANDLER должны быть заданы следующим образом:

LRESULT NotifyHandler(int idCtrl, LPNMHDR pnmh, BOOL& bHandled);

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

Примечание

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

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

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

Пример

class CMyDialog2 : public CDialogImpl<CMyDialog2>
{
public:
   enum { IDD = IDD_MYDLG };

   BEGIN_MSG_MAP(CMyDialog2)
      NOTIFY_HANDLER(IDC_TREE1, NM_CLICK, OnNMClickTree1)
   END_MSG_MAP()

public:
   // When a CMyDialog2 object receives a WM_NOTIFY message 
   // identified by IDC_TREE1 and NM_CLICK, the message is 
   // directed to CMyDialog2::OnNMClickTree1 for the actual
   // processing.
   LRESULT OnNMClickTree1(int /*idCtrl*/, LPNMHDR pNMHDR, BOOL& /*bHandled*/);
};

Требования

Header: atlwin.h

См. также

Ссылки

NOTIFY_ID_HANDLER

NOTIFY_CODE_HANDLER

REFLECTED_NOTIFY_CODE_HANDLER

NOTIFY_RANGE_HANDLER

COMMAND_HANDLER

Другие ресурсы

Message Map Macros (ATL)

Макросы ATL