Manipulador OnCmdMsg
Para realizar o roteamento de comandos, cada destino de comando chama a função de membro OnCmdMsg
do próximo destino de comando na sequência. Os destinos de comando usam OnCmdMsg
para determinar se podem tratar um comando e roteá-lo para outro destino de comando se não puderem lidar com ele.
Cada classe de destino de comando pode substituir a função de membro OnCmdMsg
. As substituições permitem que cada classe roteie comandos para um próximo destino específico. Uma janela de quadro, por exemplo, sempre roteia comandos para sua janela ou exibição filho atual, conforme mostra a tabela Rota de Comando Padrão.
A implementação CCmdTarget
padrão de OnCmdMsg
usa o mapa de mensagens da classe de destino de comando para pesquisar uma função de manipulador para cada mensagem de comando recebida, da mesma forma que as mensagens padrão são pesquisadas. Se ela encontrar uma correspondência, chamará o manipulador. A pesquisa de mapa de mensagens é explicada em Como a estrutura pesquisa mapas de mensagens.