Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
No centro da estrutura MFC estão os conceitos de documento e visualização. Um documento é um objeto de dados com o qual o usuário interage em uma sessão de edição. Ele é criado pelo comando Novo ou Aberto no menu Arquivo e normalmente é salvo em um arquivo. (Documentos MFC padrão, derivados da classe CDocument, são diferentes de documentos ativos e documentos compostos OLE.) Uma exibição é um objeto de janela por meio do qual o usuário interage com um documento.
Os principais objetos em um aplicativo em execução são:
Objetos de thread
Se o aplicativo criar threads separados de execução, por exemplo, para fazer cálculos em segundo plano, você usará classes derivadas de
CWinThread.CWinAppem si é derivadoCWinThreade representa o thread primário de execução (ou o processo principal) em seu aplicativo. Você também pode usar o MFC em threads secundários.O objeto de aplicativo
Sua classe de aplicativo (derivada de
CWinApp) controla todos os objetos acima e especifica o comportamento do aplicativo, como inicialização e limpeza. O único objeto de aplicativo do aplicativo cria e gerencia os modelos de documento para qualquer tipo de documento compatível com o aplicativo.O modelo ou modelos de documento
Um modelo de documento orquestra a criação de documentos, exibições e janelas de quadros. Uma classe de modelo de documento específica, derivada da classe
CDocTemplate, cria e gerencia todos os documentos abertos de um tipo. Aplicativos que dão suporte a mais de um tipo de documento têm vários modelos de documento. Use a classe CSingleDocTemplate para aplicativos SDI ou use a classeCMultiDocTemplatepara aplicativos MDI.As janelas com moldura
As exibições são exibidas dentro de "janelas de quadro de documento". Em um aplicativo SDI, a janela de quadro de documento também é a "janela de quadro principal" para o aplicativo. Em um aplicativo MDI, janelas de documento são janelas filhas exibidas dentro de uma janela de quadro principal. Sua classe de janela de quadro principal derivada especifica os estilos e outras características das janelas de quadros que contêm seus modos de exibição. Se você precisar personalizar janelas de quadro, derive de
CFrameWndpara personalizar a janela de quadro de documentos para aplicativos SDI. Derive deCMDIFrameWndpara personalizar a janela de quadro principal para aplicativos MDI. Para personalizar cada tipo distinto de janelas de quadro de documento MDI que seu aplicativo suporta, derive também uma classe deCMDIChildWnd.Os documentos.
Sua classe de documento (derivada de
CDocument) especifica os dados do aplicativo.Se você quiser a funcionalidade OLE em seu aplicativo, derive a sua classe de documento de
COleDocumentou de uma de suas classes que são derivadas, dependendo do tipo de funcionalidade necessária.As exibições.
Sua classe de exibição (derivada de
CView) é a "janela nos dados" do usuário. A classe de exibição controla como o usuário vê os dados do documento e interage com ele. Em alguns casos, talvez você queira que um documento tenha várias exibições dos dados.Se você precisar de rolagem, derive de
CScrollView. Se o modo de exibição tiver uma interface do usuário definida em um recurso de modelo de caixa de diálogo, derive deCFormView. Para dados de texto simples, use ou derive deCEditView. Para um aplicativo de acesso a dados baseado em formulário, como um programa de entrada de dados, derive deCRecordView(para ODBC). Também estão disponíveis classesCTreeView,CListVieweCRichEditView.
Em um aplicativo em execução, esses objetos respondem cooperativamente às ações do usuário, associados por comandos e outras mensagens. Um único objeto de aplicativo gerencia um ou mais modelos de documento. Cada modelo de documento cria e gerencia um ou mais documentos (dependendo se o aplicativo é SDI ou MDI). O usuário exibe e manipula um documento por meio de uma exibição contida dentro de uma janela de quadro. A figura a seguir mostra as relações entre esses objetos para um aplicativo SDI.

Objetos em um aplicativo SDI em execução
O restante dessa família de artigos explica como as ferramentas da estrutura, o Assistente de Aplicativo MFC e os editores de recursos, criam esses objetos, como eles funcionam juntos e como você as usa em sua programação. Documentos, exibições e janelas de quadro são discutidos com mais detalhes em Objetos de Janela e Arquitetura de Documento/Exibição.