Compartilhar via


Modelos de documento e o processo de criação de exibição de documento

Para gerenciar o processo complexo de criação de documentos com suas exibições associadas e janelas de quadro, a estrutura usa duas classes de modelo de documento: CSingleDocTemplate para aplicativos SDI e CMultiDocTemplate para aplicativos MDI. Um CSingleDocTemplate pode criar e armazenar um documento de um tipo por vez. Um CMultiDocTemplate mantém uma lista de muitos documentos abertos de um tipo.

Alguns aplicativos dão suporte a vários tipos de documento. Por exemplo, um aplicativo pode dar suporte a documentos de texto e documentos gráficos. Nesse aplicativo, quando o usuário escolhe o comando Novo no menu de Arquivos, uma caixa de diálogo mostra uma lista de possíveis novos tipos de documento a serem abertos. Para cada tipo de documento com suporte, o aplicativo usa um objeto de modelo de documento distinto. A figura a seguir ilustra a configuração de um aplicativo MDI que dá suporte a dois tipos de documento e mostra vários documentos abertos.

Diagram of an MDI application that has two document types.
Um aplicativo MDI com dois tipos de documento

Os modelos de documento são criados e mantidos pelo objeto do aplicativo. Uma das principais tarefas executadas durante a função InitInstance do aplicativo é construir um ou mais modelos de documento do tipo apropriado. Esse recurso é descrito na Criação de Modelo de Documento. O objeto de aplicativo armazena um ponteiro para cada modelo de documento em sua lista de modelos e fornece uma interface para adicionar modelos de documento.

Se você precisar dar suporte a dois ou mais tipos de documento, deverá adicionar uma chamada extra ao AddDocTemplate para cada tipo de documento.

Um ícone é registrado para cada modelo de documento com base em sua posição na lista de modelos de documento do aplicativo. A ordem dos modelos de documento é determinada pela ordem em que são adicionados com chamadas a AddDocTemplate. O MFC pressupõe que o primeiro recurso ícone no aplicativo seja o ícone do aplicativo, o próximo recurso ícone é o primeiro ícone de documento e assim por diante.

Por exemplo, um modelo de documento é o terceiro de três para o aplicativo. Se houver um recurso de Ícone no aplicativo no índice 3, esse ícone será usado para o modelo de documento. Caso contrário, o ícone no índice 0 será usado como padrão.

Confira também

Tópicos gerais do MFC
Criação do modelo de documento
Criação de exibição/documento
Relacionamentos entre objetos MFC
Criando novos documentos, janelas e exibições