Exemplo de roteamento de comando
Para ilustrar, considere uma mensagem de comando de um item do menu desmarcar tudo no menu ' edição ' do aplicativo MDI.Suponha que a função de manipulador para este comando é uma função de membro de classe de documento do aplicativo.Aqui está como esse comando alcança seu manipulador depois que o usuário escolhe o item de menu:
A janela do quadro principal recebe a mensagem de comando primeiro.
A janela de quadro MDI principal dá uma chance para lidar com o comando da janela de filho MDI ativo no momento.
O roteamento padrão de uma janela de quadro MDI filho dá seu modo de exibição uma chance do comando at antes de verificar seu próprio MAP da mensagem.
O modo de exibição verifica primeiro seu próprio MAP da mensagem e, em seguida não encontrar nenhum manipulador direciona o comando para o documento associado.
O documento verifica MAP da mensagem e localiza um manipulador.Função de membro deste documento é chamada e pára o roteamento.
Se o documento não tinha um manipulador, em seguida ele seria rotear o comando a seu modelo de documento.Em seguida, o comando retornará para o modo de exibição e, em seguida, a janela do quadro.Finalmente, a janela do quadro deve verificar MAP da mensagem.Se essa seleção também falha, o comando seria ser roteado volta para a janela de quadro MDI principal e, em seguida, para o objeto do aplicativo — o destino final dos comandos sem tratamento.