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