Formularansichten (MFC)

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

Wenn der Benutzer mit 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 eine nicht gefunden 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, auf CDialog deren Dialogklasse basiert und auf der keine Ansichtsklasse implementiert ist). Ohne die Dokument-/Ansichtsarchitektur implementiert Visual C++ jedoch nicht automatisch die Funktion "Datei>neu". Sie müssen eine Möglichkeit zum Anzeigen zusätzlicher Formulare erstellen, z. B. durch Implementieren eines Dialogfelds mit Registerkarten mit verschiedenen Eigenschaftenseiten.

Wenn Sie ein neues Formular in Ihre Anwendung einfügen, führt Visual C++ die folgenden Aktionen aus:

  • Erstellt eine Klasse basierend auf einer der von Ihnen ausgewählten Formatvorlagenklassen (CFormView, CRecordView, CDaoRecordViewoder CDialog).

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

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

    WS_CHILD=Ein

    WS_BORDER=Aus

    WS_VISIBLE=Aus

    WS_CAPTION=Aus

Für Anwendungen, die auf der Dokument-/Ansichtsarchitektur basieren, wird auch der Befehl "Neues Formular " (mit der rechten Maustaste in der Klassenansicht) angezeigt:

  • Erstellt eine CDocument-basierte Klasse

    Anstatt eine neue Klasse erstellt zu haben, können Sie eine beliebige vorhandene, CDocumentbasierende 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 AddDocumentTemplate im Code Ihrer Anwendung InitInstance hinzu.

    Visual C++ fügt diesen Code für jedes neue Formular hinzu, das das Formular zur Liste der verfügbaren Formulare hinzufügt, wenn der Benutzer den Befehl "Neu" auswäht. Dieser Code enthält die zugeordnete Ressourcen-ID des Formulars und die Namen der zugeordneten Dokument-, Ansichts- und Frameklassen, die zusammen das neue Formularobjekt bilden.

    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ächenelemente