COMMAND_HANDLER

COMMAND_HANDLER ( id, codice, func )

Parametri

identificazione

[in] L'identificatore dell'acceleratore, il controllo o voce di menu.

codice

[in] Il codice di notifica.

func

[in] Il nome della funzione di gestione dei messaggi.

Osservazioni

Definisce una voce in una mappa messaggi. Mappe COMMAND_HANDLER un messaggio WM_COMMAND alla funzione gestore specificato, basato sul codice di notifica e l'identificatore del controllo. Ad esempio

classe CMyClass:...
{
pubblica:
 nbsp; ...

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

/ / Quando un oggetto CMyClass riceve un WM_COMMAND
   / / messaggio identificato da IDC_MYCTL ed EN_CHANGE,
   / / il messaggio è diretto a CMyClass::OnChange
   / / per l'elaborazione effettiva.
   LRESULT OnChange (…).
   { ... }

}

Qualsiasi funzione specificata in una macro COMMAND_HANDLER deve definito come segue:

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

I set di mappa del messaggio bHandled su TRUE prima di CommandHandler viene chiamato. Se CommandHandler non gestisce completamente il messaggio, è necessario impostare bHandled su FALSE per indicare che il messaggio richiede ulteriore elaborazione.

&Notanbsp;  Iniziare sempre una mappa messaggi con BEGIN_MSG_MAP. È possibile dichiarare le mappe successivo messaggio alternativo con ALT_MSG_MAP. La macro END_MSG_MAP segna la fine della mappa messaggi. Ogni mappa dei messaggi deve avere esattamente un'istanza di BEGIN_MSG_MAP ed END_MSG_MAP.

Oltre a COMMAND_HANDLER, è possibile utilizzare MESSAGE_HANDLER per mappare un messaggio WM_COMMAND senza tenere conto di un identificatore o codice. In questo caso, MESSAGE_HANDLER(WM_COMMAND, OnHandlerFunction) sarà diretto tutti i messaggi WM_COMMAND perOnHandlerFunction.

Per ulteriori informazioni sull'utilizzo di mappe messaggi in ATL, vedere Mappe messaggio nell'articolo "Classi finestra ATL."

Macro ATL e funzioni globali

Vedi anche

COMMAND_ID_HANDLER, COMMAND_CODE_HANDLER, COMMAND_RANGE_HANDLER, NOTIFY_HANDLER

Index