Aracılığıyla paylaş


CCreateContext yapısı

Framework kullanan CCreateContext yapı çerçeve pencereleri ve belge ile ilgili görünümler oluşturduğunda.

struct CCreateContext

Notlar

CCreateContextbir yapıdır ve temel bir sınıf yok.

Bir pencere oluşturduğunuzda, bu yapı içindeki değerleri belge bileşenlerini kendi veri görünümüne bağlanmak için kullanılan bilgiler sağlar.Yalnızca kullanmak zorunda CCreateContext bölümleri oluşturma işlemi geçersiz kılma gerekiyorsa.

A CCreateContext yapısı belge, çerçeve penceresi, görünümü ve belge şablonu için işaretçiler içerir.Ayrıca bir işaretçi içeren bir CRuntimeClass oluşturmak için görünüm türünü tanımlar.Çalışma zamanı sınıf bilgilerini ve geçerli belge işaretçi dinamik olarak yeni bir görünüm oluşturmak için kullanılır.Aşağıdaki tabloda nasıl ve ne zaman önerdiği her CCreateContext üye kullanılan:

Üye

Tür

Ne amaçla kullanıldığını

m_pNewViewClass

CRuntimeClass*

CRuntimeClassOluşturulacak yeni görünümü.

m_pCurrentDoc

CDocument*

Yeni görünümü ile ilişkilendirilmiş varolan belge.

m_pNewDocTemplate

CDocTemplate*

Yeni bir MDI çerçevesi pencere oluşturma ile ilişkili belge şablonu.

m_pLastView

CView*

Üzerinde ek görünümler, bölücü penceresindeki görünümler oluşturma veya bir belge üzerinde ikinci bir görünüm oluşturmayı modellemesini özgün görünümü.

m_pCurrentFrame

CFrameWnd*

Üzerinde ek çerçeve pencereler, bir belge üzerinde ikinci bir çerçeve penceresi oluşturma gibi modellenebilir çerçeve penceresi.

Belge ve ilişkili bileşenlerini bir belge şablonu oluşturduğunda, saklanan bilgileri doğrular CCreateContext yapısı.Örneğin, bir görünümü için varolmayan bir belge oluşturulmalıdır değil.

[!NOT]

Tüm işaretçiler CCreateContext isteğe bağlıdır ve olabilir NULL belirtilmemiş veya bilinmiyor.

CCreateContextaltında listelenen üye işlevleri tarafından kullanılan "Ayrıca bkz." Kılacak planlıyorsanız, bu işlevlerin açıklamaları için özel bilgileri inceleyin.

Birkaç genel kurallar şunlardır:

  • Pencere oluşturulması için bir bağımsız değişken olarak olarak geçirilen zaman CWnd::Create, CFrameWnd::Create, ve CFrameWnd::LoadFrame, oluşturma bağlamında ne yeni bir pencere bağlanması belirtir.Çoğu windows için tüm yapısını isteğe bağlıdır ve bir NULL işaretçisi geçildi.

  • Geçersiz kılınabilir üye işlevleri için aþaðýdaki gibi CFrameWnd::OnCreateClient, CCreateContext bağımsız değişkeni isteğe bağlıdır.

  • Katılan üye işlevleri için görünüm oluşturma, siz görünümü oluşturmak için yeterli bilgi sağlamanız gerekir.Örneğin, ayırıcı penceresinde ilk görünümü için sınıf bilgileri görüntüleyin ve geçerli belge sağlamalısınız.

Genel olarak, framework varsayılan ayarları kullanırsanız, yok sayabilirsiniz CCreateContext.Daha gelişmiş değişiklikler, Microsoft Foundation Class Library kaynak kodu veya gibi VIEWEX, örnek programlar çalışırsanız size yol gösterecektir.Gerekli bir parametre unutursanız, framework onaylama işlemi ne unuttum söyleyecektir.

Daha fazla bilgi için CCreateContext, mfc örnek bkz: VIEWEX.

Gereksinimler

**Başlık:**afxext.h

Ayrıca bkz.

Başvuru

Hiyerarşi grafik

CFrameWnd::Create

CFrameWnd::LoadFrame

CFrameWnd::OnCreateClient

CSplitterWnd::Create

CSplitterWnd::CreateView

CWnd::Create