COMMAND_HANDLER

COMMAND_HANDLER ( id, código de, func )

Parâmetros

identificação

[no] O identificador do item de menu, Controlarar ou acelerador.

código

[no] O código de notificação.

func

[no] O nome da função mensagem-manipulador.

Observações

Define uma entrada em um mapa da mensagem. COMMAND_HANDLER mapeia uma mensagem WM_COMMAND para a função de manipulador especificado, com base no código de notificação e o identificador de Controlarar. Por exemplo

classe CMyClass:...
{
público:
 nbsp; ...

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

/ / Quando um objeto CMyClass recebe um WM_COMMAND
   / / mensagem identificado por IDC_MYCTL e EN_CHANGE,
   / / a mensagem é direcionada para CMyClass::OnChange
   / / para o processamento real.
   LRESULT OnChange (...)
   { ... }

}

Qualquer função especificada em uma macro COMMAND_HANDLER deve ser definida como segue:

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

Os conjuntos de mapa de mensagem bHandled para TRUE antes CommandHandler é chamado. Se CommandHandler totalmente não manipula a mensagem, ele deve definir bHandled como falso para indicar que a mensagem precisa processamento adicional.

&Notanbsp;  Sempre começa um mapa da mensagem com BEGIN_MSG_MAP. Em seguida, você pode declare mapas de mensagem alternativa subseqüentes com ALT_MSG_MAP. A macro END_MSG_MAP marca o final do mapa da mensagem. Cada mapa da mensagem deve ter exatamente uma instância de BEGIN_MSG_MAP e END_MSG_MAP.

Além de COMMAND_HANDLER, você pode usar MESSAGE_HANDLER para mapear uma mensagem WM_COMMAND sem relação a um identificador ou código. Neste caso, MESSAGE_HANDLER(WM_COMMAND, OnHandlerFunction) irá direcionar as mensagens de WM_COMMAND aOnHandlerFunction.

Para obter mais informações sobre como usar mapas de mensagem no ATL, consulte Mensagem mapas no artigo "Classes de janela do ATL".

ATL Macros e funções Global

Ver também

COMMAND_ID_HANDLER, COMMAND_CODE_HANDLER, COMMAND_RANGE_HANDLER, NOTIFY_HANDLER

Index