CDocument::OnNewDocument

virtual BOOL OnNewDocument ( );

Valor de retorno

Diferente de zero se o documento foi inicializado com êxito; caso contrário 0.

Observações

Chamado pela estrutura como parte do comando novo arquivo. A implementação padrão desta função chama a função de membro DeleteContents para garantir que o documento está vazio e, em seguida, marca o novo documento como apagar. Substituir esta função para inicializar a estrutura de dados para um novo documento. Você deve chamar a versão de classe base desta função de sua Substituir.

Se o usuário escolhe o comando novo arquivo em um aplicativo SDI, a estrutura usa essa função para reinicializar o documento existente, ao invés de criar uma nova. Se o usuário escolhe novo arquivo em um aplicativo de interface (MDI) documento várias, o framework cria um novo documento de cada vez e, em seguida, chama essa função para inicializá-lo. Você deve colocar seu código de inicialização nessa função em vez de no Construtor para o comando novo arquivo seja eficaz em aplicativos SDI.

Exemplo

/ / Os exemplos a seguintes ilustram métodos alternativos de
/ / inicializar um objeto de documento.

/ / Método 1: em um aplicativo MDI, o lugar mais simples para fazer / / inicialização está em constructor.nbsp de documento; O quadro / / sempre cria um novo objeto de documento para o novo arquivo ou abrir arquivo.

CMyDoc::CMyDoc()
{
   / / Fazer inicialização do documento MDI aqui.
   // ...
}

/ / Método 2: em um aplicativo SDI ou MDI, fazer tudo inicialização / / em uma Substituir de On&NewDocument, se você estiver certo de que
/ / a inicialização é efetivamente salva após salvar arquivo
/ / e totalmente restaurada após o arquivo aberto, através de serialização.

BOOL CMyDoc::OnNewDocument()
{
   if (!.CDocument::OnNewDocument())
      retornar FALSE;

/ / Fazer inicialização do novo documento aqui.

retornar TRUE;
}

/ / Método 3: se a inicialização do seu documento não estiver
/ / efetivamente salvos e restaurados por serialização (durante a salvar arquivo
/ / e abrir arquivo), em seguida, implemente a inicialização única
/ / function (chamado InitMyDocument neste exemplo).  Chame o
/ / compartilhadas função de inicialização de substituições de ambos
/ / OnNewDocument e OnOpenDocument.

BOOL CMyDoc::OnNewDocument()
{
   if (!.CDocument::OnNewDocument())
      retornar FALSE;

InitMyDocument(); / / chamar sua função de inicialização compartilhada

/ / Se seu novo documento objeto requer inicialização adicional
   / / não é necessário quando o documento é desserializado através do arquivo abrir,
   / / Execute essa inicialização adicionais aqui.

retornar TRUE;
}

Visão geral de CDocument |nbsp; Membros de classe | Gráfico de hierarquia

Co&nsulte tambémnbsp;CDocument::CDocument, CDocument::DeleteContents, CDocument::OnCloseDocument, CDocument::OnOpenDocument, CDocument::OnSaveDocument

Index