Roteamento de comando
Sua responsabilidade em trabalhar com os comandos é limitada a fazer conexões de mapa da mensagem entre os comandos e suas funções do manipulador, uma tarefa para a qual você usar a janela Propriedades.Você também deve escrever a maioria dos manipuladores de comandos.
Mensagens do Windows geralmente são enviadas para a janela do quadro principal, mas as mensagens de comando, em seguida, são roteadas para outros objetos.A estrutura roteia comandos por meio de uma seqüência padrão de objetos de destino de comando, um dos quais deve ter um manipulador para o comando.Cada objeto de destino de comando verifica seu mapa da mensagem para ver se ele pode processar a mensagem de entrada.
Diferentes classes de destino de comando Verifique sua própria mensagem mapeia em momentos diferentes.Normalmente, uma classe roteia o comando para alguns outros objetos para dar-lhes a primeira oportunidade no comando.Se nenhum desses objetos manipula o comando, a classe original verifica seu próprio mapa da mensagem.Em seguida, se ele não pode fornecer um manipulador de si, ele pode rotear o comando para ainda mais destinos de comando.A tabela comando padrão rota abaixo mostra como cada uma das classes estruturas essa seqüência.A ordem geral em que um destino encaminha um comando é:
Para o objeto de destino de comando do filho ativo no momento.
A mesmo.
Para outros destinos de comando.
Quanto custa esse mecanismo de roteamento?Em comparação com o que faz seu manipulador em resposta a um comando, o custo de roteamento é baixo.Tenha em mente que a estrutura gera comandos somente quando o usuário interage com um objeto de interface do usuário.
Padrão de rota comando
Quando um objeto deste tipo recebe um comando... |
Ele oferece a si e outros objetos de destino de comando uma chance de lidar com o comando nesta ordem: |
---|---|
Janela de quadro MDI (CMDIFrameWnd) |
|
Janela de quadro do documento (CFrameWnd, CMDIChildWnd) |
|
View |
|
Document |
|
Caixa de diálogo |
|
Onde entradas numeradas na segunda coluna da tabela anterior Mencione outros objetos, como um documento, consulte o item correspondente na primeira coluna.Por exemplo, quando você ler na segunda coluna que a exibição encaminha um comando ao seu documento, consulte a entrada de "Documento" na primeira coluna siga o roteamento ainda mais.