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
,CDaoRecordView
oderCDialog
).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 KlasseAnstatt eine neue Klasse erstellt zu haben, können Sie eine beliebige vorhandene,
CDocument
basierende 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 AnwendungInitInstance
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: