Um retrato da arquitetura de exibição do documento
Documentos e exibições são combinadas em um aplicativo do MFC típico.Os dados são armazenados no documento, mas o modo de exibição tem privilegiado de acesso aos dados.A separação do documento no modo de exibição separa o armazenamento e a manutenção dos dados da sua exibição.
Obtenham acesso a dados de documento no modo de exibição
O modo de exibição acessa dados do seu documento com o GetDocument função, que retorna um ponteiro para o documento ou fazendo com que o modo de exibição de classe um C++ friend da classe de documento.O modo de exibição usa seu acesso aos dados para obter os dados quando estiver pronto para desenhar ou manipulá-lo.
Por exemplo, de modo de exibição OnDraw função de membro, a exibição usa GetDocument para obter um ponteiro de documento.Depois ele usa esse ponteiro para acessar um CString membro de dados no documento.O modo de exibição passa a cadeia de caracteres para o TextOut função.Para ver o código deste exemplo, consulte desenho em um modo de.
Entrada do usuário para o modo de exibição
O modo de exibição também pode interpretar um clique do mouse em si mesmo como seleção ou edição dos dados.Da mesma forma ele poderia interpretar de pressionamentos de teclas como entrada de dados ou edição.Suponha que o usuário digita uma seqüência de caracteres em uma exibição de texto que gerencia.A exibição obtém um ponteiro para o documento e usa o ponteiro para passar os novos dados para o documento, que armazena em alguns estrutura de dados.
Atualizando vários modos de exibição do mesmo documento
Em um aplicativo com várias exibições do mesmo documento — como uma janela separadora em um editor de texto — o modo de exibição primeiro passa os novos dados para o documento.Em seguida, ele chama o documento UpdateAllViews função de membro, informa todos os modos de exibição do documento para atualizar-se, refletindo os novos dados.Sincroniza as visualizações.