Relações entre objetos do MFC

Para ajudar a colocar o documento / exibir processo de criação em perspectiva, considere a possibilidade de um programa em execução: um documento, a janela do quadro usado para conter o modo de exibição e o modo de exibição associada ao documento.

  • Um documento mantém uma lista dos modos de exibição de documento e um ponteiro para o modelo de documento que criou o documento.

  • Um modo de exibição mantém um ponteiro para seu documento e é um filho de sua janela de quadro pai.

  • Uma janela de quadro do documento mantém um ponteiro para o modo de exibição ativo corrente.

  • Um modelo de documento mantém uma lista dos seus em aberto documentos.

  • O aplicativo mantém uma lista de seus modelos de documento.

  • Windows mantém registro de todas as janelas abertas para que ele pode enviar mensagens a eles.

Estes relacionamentos são estabelecidos durante a criação do modo de exibição de documentos /.A tabela a seguir mostra como os objetos em um programa em execução podem acesso outros objetos.Qualquer objeto pode obter um ponteiro para o objeto do aplicativo ligando para a função global AfxGetApp.

Obtenham acesso a outros objetos no seu aplicativo

Do objeto

Como acesso outros objetos

Document

Use GetFirstViewPosition and GetNextView para acessar a lista de modo de exibição do documento.

De telefonarGetDocTemplate para obter o modelo de documento.

View

De telefonarGetDocument para obter o documento.

De telefonarGetParentFrame para obter a janela do quadro.

Janela de quadro do documento

De telefonarGetActiveView para obter a exibição corrente.

De telefonarGetActiveDocument para obter o documento anexado ao modo de exibição corrente.

Janela de quadro MDI

De telefonarMDIGetActive para obter o ativo no momento CMDIChildWnd.

Normalmente, uma janela do quadro tiver um modo de exibição, mas às vezes, sistema autônomo no divisor janelas, a mesma janela do quadro contém vários modos de exibição.A janela do quadro mantém um ponteiro para a exibição ativo no momento; o ponteiro será atualizado sempre que outro modo de exibição é ativado.

Observação:

Um ponteiro para a janela do quadro principal é armazenado na m_pMainWnd variável de membro do objeto do aplicativo.Uma telefonar para OnFileNew na sua substituir da InitInstance função de membro de CWinApp Define m_pMainWnd para você. Se você não fizer isso telefonar OnFileNew, você deve conjunto o valor da variável no InitInstance Você mesmo. (SDI COM aplicativos de componente (servidor) podem não defina a variável se /Embedding for na linha de comando.) Observe que m_pMainWnd Agora é um membro da classe CWinThread em vez de CWinApp.

Consulte também

Conceitos

documento Modelos e o documento / exibir processo de criação

Criação do modelo de documento

Criação de documento/exibição

Criação de novos documentos, Windows e exibições