Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Architektura používá CCreateContext strukturu při vytváření oken rámečku a zobrazení přidružených k dokumentu.
Syntaxe
struct CCreateContext
Poznámky
CCreateContext je struktura a nemá základní třídu.
Při vytváření okna poskytují hodnoty v této struktuře informace, které slouží k propojení součástí dokumentu s zobrazením dat. Je nutné použít CCreateContext pouze v případě, že přepisujete části procesu vytváření.
CCreateContext Struktura obsahuje ukazatele na dokument, okno rámečku, zobrazení a šablonu dokumentu. Obsahuje také ukazatel na typ CRuntimeClass zobrazení, který se má vytvořit. Informace o třídě za běhu a aktuální ukazatel dokumentu se používají k dynamickému vytvoření nového zobrazení. Následující tabulka navrhuje, jak a kdy může být každý CCreateContext člen použit:
| Člen | Typ | K čemu slouží |
|---|---|---|
m_pNewViewClass |
CRuntimeClass* |
CRuntimeClass nového zobrazení, které chcete vytvořit. |
m_pCurrentDoc |
CDocument* |
Existující dokument, který se má přidružit k novému zobrazení. |
m_pNewDocTemplate |
CDocTemplate* |
Šablona dokumentu přidružená k vytvoření nového okna rámce MDI. |
m_pLastView |
CView* |
Původní zobrazení, na kterém se modelují další zobrazení, jako při vytváření zobrazení rozděleného okna nebo vytvoření druhého zobrazení v dokumentu. |
m_pCurrentFrame |
CFrameWnd* |
Okno s rámečkem, na kterém jsou modelována další okna rámečku, stejně jako při vytváření druhého okna rámečku v dokumentu. |
Když šablona dokumentu vytvoří dokument a jeho přidružené komponenty, ověří informace uložené ve struktuře CCreateContext . Například zobrazení by se nemělo vytvářet pro neexistující dokument.
Poznámka:
Všechny ukazatele jsou CCreateContext volitelné a můžou být NULL v případě, že nejsou zadané nebo neznámé.
CCreateContext používá členské funkce uvedené v části Viz také. Pokud plánujete jejich přepsání, projděte si popisy těchto funkcí.
Tady je několik obecných pokynů:
Při předání jako argument pro vytvoření okna, jako v
CWnd::CreateCFrameWnd::Create, aCFrameWnd::LoadFrame, kontext vytvoření určuje, k čemu má být nové okno připojeno. U většiny oken je celá struktura volitelná aNULLukazatel lze předat.Pro přepisovatelné členské funkce, například
CFrameWnd::OnCreateClient,CCreateContextargument je nepovinný.Pro členské funkce zapojené do vytváření zobrazení je nutné zadat dostatek informací k vytvoření zobrazení. Například pro první zobrazení v rozděleném okně musíte zadat informace o třídě zobrazení a aktuální dokument.
Obecně platí, že pokud používáte výchozí hodnoty rozhraní, můžete ignorovat CCreateContext. Pokud se pokusíte o pokročilejší úpravy, provede vás zdrojový kód knihovny tříd Microsoft Foundation Nebo ukázkové programy, například VIEWEX. Pokud zapomenete požadovaný parametr, kontrolní výraz architektury vám řekne, co jste zapomněli.
Další informace o CCreateContext, viz MFC ukázkové VIEWEX.
Požadavky
Hlavička: afxext.h
Viz také
Graf hierarchie
CFrameWnd::Create
CFrameWnd::LoadFrame
CFrameWnd::OnCreateClient
CSplitterWnd::Create
CSplitterWnd::CreateView
CWnd::Create