Compartilhar via


Exibições de formulário (MFC)

Você pode adicionar formulários a qualquer aplicativo Visual C++ que dê suporte às bibliotecas MFC, incluindo um aplicativo baseado em formulários (aquele cuja classe de exibição é derivada de CFormView). Se você não criou inicialmente seu aplicativo para dar suporte a formulários, o Visual C++ adicionará esse suporte quando você inserir um novo formulário. Em um aplicativo SDI ou MDI, que implementa a arquitetura de documento/exibição padrão, quando o usuário escolhe o comando Novo (por padrão, no menu Arquivo ), o Visual C++ solicita que o usuário escolha entre os formulários disponíveis.

Com um aplicativo SDI, quando o usuário escolhe o comando Novo, a instância atual do formulário continua a ser executada, mas se nenhuma for encontrada, uma instância do aplicativo com o formulário selecionado será criada. Em um aplicativo MDI, a instância atual do formulário continua a ser executada quando o usuário escolhe o comando Novo.

Observação

Você pode inserir um formulário em um aplicativo baseado em caixa de diálogo (aquele cuja classe de caixa de diálogo é baseada em CDialog e no qual nenhuma classe de exibição é implementada). No entanto, sem a arquitetura de documento/exibição, o Visual C++ não implementa automaticamente a funcionalidade Arquivo>Novo. Você precisa criar uma maneira de o usuário exibir formulários adicionais, como implementando uma caixa de diálogo com várias páginas de propriedades.

Quando você insere um novo formulário em seu aplicativo, o Visual C++ faz o seguinte:

  • Cria uma classe com base em uma das classes de estilo de formulário que você escolhe (CFormView, CRecordView, CDaoRecordView ou CDialog).

  • Cria um recurso de caixa de diálogo com estilos apropriados (ou você pode usar um recurso de diálogo existente que ainda não foi associado a uma classe).

    Se você escolher um recurso de caixa de diálogo existente, talvez seja necessário definir esses estilos usando a página Propriedades para a caixa de diálogo. Os estilos de uma caixa de diálogo precisam incluir:

    WS_CHILD=On

    WS_BORDER=Off

    WS_VISIBLE=Off

    WS_CAPTION=Off

Para aplicativos com base na arquitetura de documento/exibição, o comando Novo Formulário (clique com o botão direito do mouse no Modo de Exibição de Classe) também:

  • Cria uma classe baseada em CDocument

    Em vez de criar uma nova classe, você pode usar qualquer classe baseada em CDocument existente em seu projeto.

  • Gera um modelo de documento (derivado de CDocument) com recursos de cadeia de caracteres, menu e ícone.

    Você também pode criar uma classe na qual basear o modelo.

  • Adiciona uma chamada ao código AddDocumentTemplate do aplicativo InitInstance.

    O Visual C++ adiciona esse código para cada novo formulário criado, o que adiciona o formulário à lista de formulários disponíveis quando o usuário escolhe o comando Novo. Esse código inclui a ID de recurso associada do formulário e os nomes das classes de documento, exibição e quadro associadas que, juntas, compõem o novo objeto de formulário.

    Os modelos de documento servem como a conexão entre documentos, janelas de quadro e exibições. Para apenas um documento, você pode criar muitos modelos.

Para saber mais, veja:

Confira também

Elementos de interface de usuário