Condividi tramite


NOTIFY_HANDLER

Definisce una voce in una mappa dei messaggi.

NOTIFY_HANDLER( 
   id, 
   cd, 
   func  
)

Parametri

  • id
    [in] identificatore del controllo che invia il messaggio.

  • cd
    [in] il codice della notifica.

  • func
    [in] il nome della funzione di gestore.

Note

NOTIFY_HANDLER esegue il mapping di un messaggio WM_NOTIFY la funzione del gestore specificato, in base al codice di notifica e all'identificatore di controllo.

Qualsiasi funzione specificata in una macro NOTIFY_HANDLER deve essere definita come segue:

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

Imposta bHandled della mappa messaggi a TRUE prima NotifyHandler viene chiamato.Se NotifyHandler completamente non gestisce il messaggio, deve impostare bHandled a FALSE per indicare un'ulteriore elaborazione delle necessità del messaggio.

[!NOTA]

Inizia sempre una mappa messaggi con BEGIN_MSG_MAP.È quindi possibile dichiarare le mappe messaggi alternate successive con ALT_MSG_MAP.La macro END_MSG_MAP contrassegna la fine della mappa messaggi.Ogni mappa messaggi deve contenere esattamente un'istanza BEGIN_MSG_MAP e END_MSG_MAP.

Oltre a NOTIFY_HANDLER, è possibile utilizzare MESSAGE_HANDLER per eseguire il mapping di un messaggio WM_NOTIFY indipendentemente da un identificatore o dal codice.In questo caso, MESSAGE_HANDLER(WM_NOTIFY, OnHandlerFunction) dirigerà tutti i messaggi WM_NOTIFY a OnHandlerFunction.

Per ulteriori informazioni sull'utilizzo delle mappe dei messaggi in ATL, vedere Mappe messaggi.

Esempio

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

Requisiti

Header: atlwin.h

Vedere anche

Riferimenti

NOTIFY_ID_HANDLER

NOTIFY_CODE_HANDLER

REFLECTED_NOTIFY_CODE_HANDLER

NOTIFY_RANGE_HANDLER

COMMAND_HANDLER

Altre risorse

Macro della mappa messaggi (ATL)

Macro ATL