MESSAGE_HANDLER ( msg, func )
Parâmetros
msg
[no] A mensagem do Windows.
func
[no] O nome da função mensagem-manipulador.
Observações
Define uma entrada em um mapa da mensagem. MESSAGE_HANDLER mapeia uma mensagem de Windows para a função de manipulador especificado. Por exemplo:
classe CMyClass:...
{
público:
nbsp; ...
BEGI&N_MSG_MAP(CMyClass)
MESSAGE_HANDLER (WM_PAINT, OnPaint)
...
END_MSG_MAP()
/ / Quando um objeto CMyClass recebe um WM_PAINT
/ / mensagem, a mensagem é direcionada para
/ / Processamento de CMyClass::OnPaint para o real.
LRESULT OnPaint (...)
{ ... }
}
Qualquer função especificada em uma macro MESSAGE_HANDLER deve ser definida como segue:
LRESULT MessageHandler(UINT uMsg, WP&ARAM wParam, LPARAM lParam, BOOLamp; bHandled)
Os conjuntos de mapa de mensagem bHandled para TRUE antes MessageHandler é chamado. Se MessageHandler 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 MESSAGE_HANDLER, você pode usar COMMAND_HANDLER e NOTIFY_HANDLER para mapear WM_COMMAND e mensagens de WM_NOTIFY , respectivamente.
Para obter mais informações sobre como usar mapas de mensagem no ATL, consulte Mensagem mapas no artigo "Classes de janela do ATL".
Ver também