Compartilhar via


Tratamento e mapeamento de mensagens

Esta família de artigos descreve como as mensagens e os comandos são processados pela estrutura do MFC e como você as conecta às funções de 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 e assim por diante. Você pode mapear uma única mensagem ou um intervalo de mensagens, IDs de comando ou IDs de controle.

WM_COMMAND mensagens — geralmente 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, a janela de quadros, a exibição e os documentos ativos em seu programa. Você pode substituir esse roteamento se necessário.

Os mapas de mensagens também fornecem uma maneira de atualizar objetos de interface do usuário (como menus e botões da barra de ferramentas), habilitando ou desabilitando-os para atender ao contexto atual.

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

O que você quer saber mais sobre

Consulte também

Conceitos
Tópicos gerais do MFC
Classe CWnd
Classe CCmdTarget