Partilhar via


Tratamento e mapeamento de mensagens

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

Nos programas tradicionais do Windows, as mensagens do Windows são tratadas numa declaração switch extensa dentro de um procedimento de janela. Em vez disso, o MFC usa mapas de mensagens para mapear mensagens diretas para funções distintas de membros da classe. Os mapas de mensagens são mais eficientes do que as funções virtuais para essa finalidade e permitem que as mensagens sejam manipuladas 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.

As mensagens WM_COMMAND — geralmente geradas por menus, os botões da barra de ferramentas ou os aceleradores — também usam o mecanismo de mapa de mensagens. 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ê pode substituir esse roteamento, se necessário.

Os mapas de mensagens também fornecem uma maneira de atualizar objetos da interface do usuário (como menus e botões da barra de ferramentas), habilitando-os ou desabilitando-os para se adequar 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

Ver também

Conceitos
Tópicos gerais do MFC
CWnd Classe
CCmdTarget Classe