Struktur CCreateContext
Kerangka kerja menggunakan CCreateContext
struktur saat membuat jendela bingkai dan tampilan yang terkait dengan dokumen.
Sintaks
struct CCreateContext
Keterangan
CCreateContext
adalah struktur dan tidak memiliki kelas dasar.
Saat Anda membuat jendela, nilai dalam struktur ini menyediakan informasi yang digunakan untuk menyambungkan komponen dokumen ke tampilan datanya. Anda hanya perlu menggunakan CCreateContext
jika Anda mengambil alih bagian dari proses pembuatan.
Struktur CCreateContext
berisi penunjuk ke dokumen, jendela bingkai, tampilan, dan templat dokumen. Ini juga berisi penunjuk ke yang CRuntimeClass
mengidentifikasi jenis tampilan yang akan dibuat. Informasi kelas run-time dan penunjuk dokumen saat ini digunakan untuk membuat tampilan baru secara dinamis. Tabel berikut ini menyarankan bagaimana dan kapan setiap CCreateContext
anggota dapat digunakan:
Anggota | Jenis | Untuk apa itu |
---|---|---|
m_pNewViewClass |
CRuntimeClass* |
CRuntimeClass dari tampilan baru yang akan dibuat. |
m_pCurrentDoc |
CDocument* |
Dokumen yang sudah ada untuk dikaitkan dengan tampilan baru. |
m_pNewDocTemplate |
CDocTemplate* |
Templat dokumen yang terkait dengan pembuatan jendela bingkai MDI baru. |
m_pLastView |
CView* |
Tampilan asli tempat tampilan tambahan dimodelkan, seperti dalam pembuatan tampilan jendela pemisah atau pembuatan tampilan kedua pada dokumen. |
m_pCurrentFrame |
CFrameWnd* |
Jendela bingkai tempat jendela bingkai tambahan dimodelkan, seperti dalam pembuatan jendela bingkai kedua pada dokumen. |
Saat templat dokumen membuat dokumen dan komponen terkait, templat dokumen tersebut memvalidasi informasi yang disimpan dalam CCreateContext
struktur. Misalnya, tampilan tidak boleh dibuat untuk dokumen yang tidak ada.
Catatan
Semua pointer di CCreateContext
bersifat opsional dan dapat jika NULL
tidak ditentukan atau tidak diketahui.
CCreateContext
digunakan oleh fungsi anggota yang tercantum di bawah "Lihat Juga." Lihat deskripsi fungsi-fungsi ini untuk informasi tertentu jika Anda berencana untuk mengambil alihnya.
Berikut adalah beberapa panduan umum:
Ketika diteruskan sebagai argumen untuk pembuatan jendela, seperti dalam
CWnd::Create
,CFrameWnd::Create
, danCFrameWnd::LoadFrame
, konteks buat menentukan apa jendela baru harus disambungkan. Untuk sebagian besar jendela, seluruh struktur bersifat opsional danNULL
penunjuk dapat diteruskan.Untuk fungsi anggota yang dapat diambil alih, seperti
CFrameWnd::OnCreateClient
,CCreateContext
argumen bersifat opsional.Untuk fungsi anggota yang terlibat dalam pembuatan tampilan, Anda harus memberikan informasi yang cukup untuk membuat tampilan. Misalnya, untuk tampilan pertama di jendela pemisah, Anda harus menyediakan informasi kelas tampilan dan dokumen saat ini.
Secara umum, jika Anda menggunakan default kerangka kerja, Anda dapat mengabaikan CCreateContext
. Jika Anda mencoba modifikasi yang lebih canggih, kode sumber Pustaka Kelas Microsoft Foundation atau program sampel, seperti VIEWEX, akan memandu Anda. Jika Anda lupa parameter yang diperlukan, pernyataan kerangka kerja akan memberi tahu Anda apa yang Anda lupakan.
Untuk informasi selengkapnya tentang CCreateContext
, lihat sampel MFC VIEWEX.
Persyaratan
Header: afxext.h
Lihat juga
Bagan Hierarki
CFrameWnd::Create
CFrameWnd::LoadFrame
CFrameWnd::OnCreateClient
CSplitterWnd::Create
CSplitterWnd::CreateView
CWnd::Create