Formularansichten (MFC)

Sie können jeder anwendung Formulare hinzufügen Visual C++ die die MFC-Bibliotheken unterstützt, einschließlich einer formularbasierten Anwendung (eine, deren Ansichtsklasse von abgeleitet CFormView ist). Wenn Sie Ihre Anwendung ursprünglich nicht zur Unterstützung von Formularen erstellt haben, Visual C++ diese Unterstützung für Sie hinzu, wenn Sie ein neues Formular einfügen. In einer SDI- oder MDI-Anwendung, die die Standardmäßige Dokument-/Ansichtsarchitekturimplementiert, fordert Visual C++ den Benutzer auf, aus den verfügbaren Formularen zu wählen, wenn der Benutzer den Befehl Neu auswählt (standardmäßig im Menü Datei).

Wenn der Benutzer bei einer SDI-Anwendung den Befehl Neu auswählt, wird die aktuelle Instanz des Formulars weiterhin ausgeführt, aber eine neue Instanz der Anwendung mit dem ausgewählten Formular wird erstellt, wenn keine instanziiert wird. In einer MDI-Anwendung wird die aktuelle Instanz des Formulars weiterhin ausgeführt, wenn der Benutzer den Befehl Neu auswählt.

Hinweis

Sie können ein Formular in eine dialogbasierte Anwendung einfügen (eine, deren Dialogklasse auf basiert, und ein Formular, in dem keine CDialog Ansichtsklasse implementiert ist). Ohne die Dokument-/Ansichtsarchitektur implementiert Visual C++ die Funktion "File|New" jedoch nicht automatisch. Sie müssen eine Möglichkeit für den Benutzer erstellen, zusätzliche Formulare anzuzeigen, z. B. durch Implementieren eines Dialogfelds im Registerkartenfenster mit verschiedenen Eigenschaftenseiten.

Wenn Sie ein neues Formular in ihre Anwendung einfügen, Visual C++ folgende Schritte aus:

  • Erstellt eine Klasse basierend auf einer der formularformatbasierten Klassen, die Sie auswählen ( CFormView CRecordView , , oder CDaoRecordView CDialog ).

  • Erstellt eine Dialogressource mit entsprechenden Stilen (oder Sie können eine vorhandene Dialogressource verwenden, die noch nicht einer Klasse zugeordnet wurde).

    Wenn Sie eine vorhandene Dialogfeldressource auswählen, müssen Sie diese Stile möglicherweise mithilfe der Seite Eigenschaften für das Dialogfeld festlegen. Stile für ein Dialogfeld müssen Folgendes enthalten:

    WS_CHILD=On

    WS_BORDER=Off

    WS_VISIBLE=Off

    WS_CAPTION=Off

Für Anwendungen, die auf der Dokument-/Ansichtsarchitektur basieren, gilt auch der Befehl New Form (Rechtsklick in Klassenansicht):

  • Erstellt eine CDocument -basierte Klasse.

    Anstatt eine neue Klasse zu erstellen, können Sie jede vorhandene CDocument -basierte Klasse in Ihrem Projekt verwenden.

  • Generiert eine Dokumentvorlage (abgeleitet von CDocument ) mit Zeichenfolgen-, Menü- und Symbolressourcen.

    Sie können auch eine neue Klasse erstellen, auf der die Vorlage basieren soll.

  • Fügt einen Aufruf von AddDocumentTemplate im Code Ihrer Anwendung InitInstance hinzu.

    Visual C++ fügt diesen Code für jedes neue Formular hinzu, das Sie erstellen. Dadurch wird das Formular der Liste der verfügbaren Formulare hinzugefügt, wenn der Benutzer den Befehl Neu auswählt. Dieser Code enthält die zugeordnete Ressourcen-ID des Formulars und die Namen der zugeordneten Dokument-, Ansichts- und Frameklassen, aus denen das neue Formularobjekt besteht.

    Dokumentvorlagen dienen als Verbindung zwischen Dokumenten, Rahmenfenstern und Ansichten. Für ein einzelnes Dokument können Sie viele Vorlagen erstellen.

Weitere Informationen finden Sie unter:

Siehe auch

Benutzeroberfläche Elements