Sdílet prostřednictvím


CCreateContext – struktura

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, a CFrameWnd::LoadFrame, kontext vytvoření určuje, k čemu má být nové okno připojeno. U většiny oken je celá struktura volitelná a NULL ukazatel lze předat.

  • Pro přepisovatelné členské funkce, například CFrameWnd::OnCreateClient, CCreateContext argument 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