Manipulação e mapeamento de mensagem

Esta família de artigos descreve como as mensagens e os comandos são processados pela estrutura MFC e como você as conecta às funções do manipulador.

Em programas tradicionais para Windows, as mensagens do Windows são tratadas em uma instrução de comutador grande em um procedimento de janela. Em vez disso, o MFC usa mapas de mensagens para mapear mensagens diretas para funções de membro de classe distintas. Os mapas de mensagens são mais eficientes do que as funções virtuais para essa finalidade e permitem que as mensagens sejam tratadas pelo objeto C++ mais apropriado: aplicativo, documento, exibição etc. Você pode mapear uma só mensagem ou um intervalo de mensagens, IDs de comando ou IDs de controle.

Mensagens WM_COMMAND, que costumam ser geradas por menus, botões de barra de ferramentas ou aceleradores, também usam o mecanismo de mapa de mensagens. O MFC define um roteamento padrão de mensagens de comando entre o aplicativo, janela de quadro, exibição e documentos ativos em seu programa. Você poderá substituir esse roteamento se precisar.

Com os mapas de mensagens, também é possível atualizar objetos de interface do usuário (como menus e botões de barra de ferramentas), habilitando ou desabilitando-os conforme o contexto atual.

Para informações gerais sobre mensagens e filas de mensagens no Windows, confira Mensagens e Filas de Mensagens no SDK do Windows.

O que mais você deseja saber?

Confira também

Conceitos
Tópicos gerais do MFC
Classe CWnd
Classe CCmdTarget