Sdílet prostřednictvím


Šablony dokumentů a proces tvorby v modelu dokument/zobrazení

Ke správě složitého procesu vytváření dokumentů s přidruženými zobrazeními a oken rámečky používá architektura dvě třídy šablon dokumentů: CSingleDocTemplate pro aplikace SDI a CMultiDocTemplate pro aplikace MDI. A CSingleDocTemplate může vytvořit a uložit jeden dokument jednoho typu najednou. Seznam CMultiDocTemplate mnoha otevřených dokumentů jednoho typu uchovává.

Některé aplikace podporují více typů dokumentů. Aplikace může například podporovat textové dokumenty a grafické dokumenty. Když uživatel v takové aplikaci zvolí příkaz Nový v nabídce Soubor, zobrazí dialogové okno seznam možných nových typů dokumentů, které se mají otevřít. Pro každý podporovaný typ dokumentu aplikace používá jedinečný objekt šablony dokumentu. Následující obrázek znázorňuje konfiguraci aplikace MDI, která podporuje dva typy dokumentů a ukazuje několik otevřených dokumentů.

Diagram of an MDI application that has two document types.
Aplikace MDI se dvěma typy dokumentů

Šablony dokumentů jsou vytvořeny a udržovány objektem aplikace. Jednou z klíčových úloh provedených během funkce aplikace InitInstance je vytvoření jedné nebo více šablon dokumentů příslušného typu. Tato funkce je popsaná v tématu Vytvoření šablony dokumentu. Objekt aplikace ukládá ukazatel na každou šablonu dokumentu v seznamu šablon a poskytuje rozhraní pro přidání šablon dokumentů.

Pokud potřebujete podporovat dva nebo více typů dokumentů, musíte přidat další volání AddDocTemplate pro každý typ dokumentu.

Ikona se zaregistruje pro každou šablonu dokumentu na základě jejího umístění v seznamu šablon dokumentů aplikace. Pořadí šablon dokumentů je určeno pořadím, do které jsou přidány pomocí volání AddDocTemplate. MFC předpokládá, že první prostředek ikony v aplikaci je ikona aplikace, další prostředek Ikony je první ikona dokumentu atd.

Šablona dokumentu je například třetí ze tří pro aplikaci. Pokud v aplikaci v indexu 3 existuje prostředek Icon, použije se tato ikona pro šablonu dokumentu. Pokud ne, ikona indexu 0 se použije jako výchozí.

Viz také

Obecná témata MFC
Vytváření šablon dokumentů
Vytvoření dokumentu nebo zobrazení
Vztahy mezi objekty MFC
Vytváření nových dokumentů, oken a zobrazení