Sdílet prostřednictvím


NOTIFY_HANDLER

Definuje položku mapy zprávy.

NOTIFY_HANDLER( 
   id, 
   cd, 
   func  
)

Parametry

  • id
    [v] Identifikátor ovládacího prvku odeslání zprávy.

  • cd
    [v] Kód upozornění.

  • func
    [v] Název funkce zpracování zprávy.

Poznámky

NOTIFY_HANDLERmapuje WM_NOTIFY zpráva Zadaný popisovač funkce, na základě kód oznámení a identifikátor ovládacího prvku.

Všechny funkce v NOTIFY_HANDLER makra musí být definována takto:

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

Nastaví mapu zpráva bHandled na TRUE před NotifyHandler se nazývá.Pokud NotifyHandler plně nezpracovává zprávy, měli nastavit bHandled na FALSE označit zprávu zapotřebí dalšího zpracování.

[!POZNÁMKA]

Vždy začít zpráva mapa s BEGIN_MSG_MAP.Potom můžete deklarovat mapy následující alternativní zprávu s ALT_MSG_MAP.END_MSG_MAP makro označuje konec zprávy mapy.Mapa každé zprávy musí mít přesně jeden výskyt BEGIN_MSG_MAP a END_MSG_MAP .

Kromě NOTIFY_HANDLER , můžete použít MESSAGE_HANDLER mapovat WM_NOTIFY zpráva bez ohledu na identifikátoru nebo kód.V tomto případě MESSAGE_HANDLER(WM_NOTIFY, OnHandlerFunction) všechny přímé WM_NOTIFY zpráv s OnHandlerFunction .

Další informace o použití mapy zprávy v ATL naleznete Zpráva mapuje.

Příklad

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*/);
};

Požadavky

Záhlaví: atlwin.h

Viz také

Referenční dokumentace

NOTIFY_ID_HANDLER

NOTIFY_CODE_HANDLER

REFLECTED_NOTIFY_CODE_HANDLER

NOTIFY_RANGE_HANDLER

COMMAND_HANDLER

Další zdroje

Zpráva mapa makra (ATL)

Makra ATL