Arquitetura de exibição de documentos
Por padrão, o Assistente de aplicativo do MFC cria um esqueleto de aplicativo com uma classe de documento e uma classe de modo de exibição.MFC separa o gerenciamento de dados para essas duas classes.O documento armazena os dados e gerencia os dados de impressão e coordenadas atualizar vários modos de exibição de dados.O modo de exibição exibe os dados e gerencia a interação do usuário com ele, incluindo a seleção e edição.
Nesse modelo, um objeto de documento MFC lê e grava dados para armazenamento persistente.O documento também pode fornecer uma interface para os dados onde quer que estejam (como em um banco de dados).Um objeto de exibição separada gerencia a exibição de dados, de processamento de dados em uma janela de seleção de usuário e a edição de dados.A exibição obtém dados de exibição do documento e se volta para o documento comunica as alterações de dados.
Embora você pode facilmente substituir ou ignorar a separação de exibição do documento, há razões convincentes para seguir este modelo na maioria dos casos.Um dos melhores é quando você precisa de várias exibições do mesmo documento, como uma planilha e um modo de exibição de gráfico.O modelo de exibição do documento permite que um objeto de exibição separada representam cada modo de exibição de dados, enquanto o código comum a todos os modos de exibição (como um mecanismo de cálculo) podem residir no documento.O documento também assume a tarefa de atualização de todos os modos de exibição sempre que os dados forem alterados.
A arquitetura de exibição do documento MFC facilita o suporte a vários modos de exibição, vários tipos de documentos, windows divisor e outros recursos valiosos de interface do usuário.
As partes do framework MFC mais visível para o usuário e para você, programador, são o documento e o modo de exibição.A maioria do seu trabalho no desenvolvimento de um aplicativo com a estrutura entra em escrever suas classes de documento e o modo de exibição.Família este artigo descreve:
As finalidades de documentos e exibições e como eles interagem na estrutura.
O que você deve fazer para implementá-las.
O cerne de exibição do documento são quatro classes principal:
O CDocument (ou COleDocument) classe oferece suporte a objetos usados para armazenar ou controlar os dados do programa e fornece a funcionalidade básica para classes de documento definida pelo programador.Um documento representa a unidade de dados que o usuário normalmente é aberto com o comando Abrir no menu Arquivo e salva com o comando Salvar no menu arquivo.
O CView (ou uma de suas muitas classes derivadas) fornece a funcionalidade básica para classes de exibição definida pelo programador.Um modo de exibição é anexado a um documento e atua como um intermediário entre o documento e o usuário: o exibir renderiza uma imagem do documento na tela e interpreta a entrada do usuário como operações no documento.O modo de exibição também processa a imagem de visualização de impressão e de impressão.
CFrameWnd (ou uma de suas variações) oferece suporte a objetos que fornece o quadro ao redor de um ou mais modos de exibição de um documento.
CDocTemplate (ou CSingleDocTemplate ou CMultiDocTemplate) oferece suporte a um objeto que coordena um ou mais documentos existentes de um determinado tipo e gerencia criando o documento correto, exibir e objetos de janela de quadro para esse tipo.
A figura a seguir mostra a relação entre um documento e seu modo de exibição.
Documento e exibição
A implementação de exibição do documento na biblioteca de classes separa os dados de sua exibição e de operações de usuário nos dados.Todas as alterações de dados são gerenciadas através da classe de documento.O modo de exibição chama esta interface para acessar e atualizar os dados.
Documentos, suas exibições associadas e o windows de quadro quadro modos de exibição é criado por um modelo de documento.O modelo de documento é responsável por criar e gerenciar todos os documentos do tipo de um documento.
O que você deseja saber mais sobre?
Classes de documento e modo de exibição criadas pelo Assistente de aplicativo
Adicionando vários modos de exibição para um único documento
Inicializar suas adições ao documento & modo de exibição de classes
Usando classes de banco de dados com documentos e modos de exibição
Usando classes de banco de dados sem documentos e modos de exibição
Consulte também
Conceitos
Documentar modelos e o processo de criação de exibição do documento
Criação de exibição de documentos
Criação de novos documentos, janelas e modos de exibição