Zobrazení formulářů (MFC)
Formuláře můžete přidat do libovolné aplikace Visual C++, která podporuje knihovny MFC, včetně aplikace založené na formulářích (jedna, jejíž třída zobrazení je odvozena).CFormView
Pokud jste původně nevytvořili aplikaci pro podporu formulářů, Visual C++ tuto podporu přidá za vás při vložení nového formuláře. V aplikaci SDI nebo MDI, která implementuje výchozí architekturu dokumentu/zobrazení, když uživatel zvolí příkaz Nový (ve výchozím nastavení v nabídce Soubor ), Visual C++ vyzve uživatele k výběru z dostupných formulářů.
Při použití aplikace SDI, když uživatel zvolí příkaz Nový , aktuální instance formuláře bude nadále spuštěna, ale nová instance aplikace s vybraným formulářem se vytvoří, pokud ho nenajdete. V aplikaci MDI se aktuální instance formuláře bude dál spouštět, když uživatel zvolí příkaz Nový .
Poznámka
Formulář můžete vložit do dialogové aplikace (která je založená na CDialog
třídě dialogového okna a na jedné, ve které není implementována žádná třída zobrazení). Bez architektury dokumentu/zobrazení však Visual C++ neimplementuje automaticky funkci Nový soubor>. Musíte vytvořit způsob, jak uživatel zobrazit další formuláře, například implementací dialogového okna s kartami s různými stránkami vlastností.
Když do aplikace vložíte nový formulář, Visual C++ provede následující akce:
Vytvoří třídu založenou na jedné z vybraných tříd ve stylu formuláře (
CFormView
,CRecordView
,CDaoRecordView
neboCDialog
).Vytvoří prostředek dialogového okna s příslušnými styly (nebo můžete použít existující prostředek dialogového okna, který ještě nebyl přidružen ke třídě).
Pokud zvolíte existující prostředek dialogového okna, budete možná muset tyto styly nastavit pomocí stránky Vlastnosti dialogového okna. Styly dialogového okna musí obsahovat:
WS_CHILD=Zapnuto
WS_BORDER=Vypnuto
WS_VISIBLE=Vypnuto
WS_CAPTION=Vypnuto
U aplikací založených na architektuře dokumentu/zobrazení je příkaz Nový formulář (klikněte pravým tlačítkem myši v zobrazení třídy) také:
Vytvoří třídu založenou
CDocument
naMísto vytvoření nové třídy můžete v projektu použít libovolnou existující
CDocument
třídu založenou na projektu.Vygeneruje šablonu dokumentu (odvozenou z
CDocument
) s řetězci, nabídkou a prostředky ikon.Můžete také vytvořit novou třídu, na které se má šablona založit.
Přidá volání
AddDocumentTemplate
do kódu vaší aplikaceInitInstance
.Visual C++ přidá tento kód pro každý nový formulář, který vytvoříte, který přidá formulář do seznamu dostupných formulářů, když uživatel zvolí příkaz Nový . Tento kód obsahuje přidružené ID prostředku formuláře a názvy přidružených tříd dokumentu, zobrazení a rámečku, které společně tvoří nový objekt formuláře.
Šablony dokumentů slouží jako propojení mezi dokumenty, rámečkovými okny a zobrazeními. Pro jeden dokument můžete vytvořit mnoho šablon.
Další informace naleznete v tématu: