CCreateContext

CCreateContextไม่มีคลาสพื้นฐาน?

กรอบใช้โครงสร้างCCreateContextเมื่อมันสร้างกรอบ windows และมุมมองที่เกี่ยวข้องกับเอกสาร เมื่อต้องการสร้างหน้าต่าง ค่าในโครงสร้างนี้ให้ข้อมูลใช้คอมโพเนนต์ที่จัดทำเอกสารและมุมมองของข้อมูลของ การเชื่อมต่อ คุณจะต้องใช้CCreateContextถ้าคุณกำลังแทนที่ส่วนของกระบวนการสร้างเท่านั้น?

โครงสร้างของCCreateContextประกอบด้วยตัวชี้ไปยังเอกสาร หน้าต่างเฟรม มุมมอง และแม่แบบเอกสาร มันยังประกอบด้วยตัวชี้ไปยังCRuntimeClassที่ระบุชนิดของมุมมองในการสร้าง ข้อมูลเวลาทำงานคลาสและตัวชี้เอกสารปัจจุบันใช้ในการสร้างมุมมองใหม่แบบไดนามิก ตารางต่อไปนี้แนะนำวิธีการ และเมื่อแต่ละสมาชิกCCreateContextอาจใช้:

สมาชิก หน้าที่อะไร
m_pNewViewClass CRuntimeClassของมุมมองใหม่เพื่อสร้าง?
m_pCurrentDoc เอกสารที่มีอยู่จะเชื่อมโยงกับมุมมองใหม่?
m_pNewDocTemplate แม่แบบเอกสารเกี่ยวข้องกับการสร้างกรอบหน้าต่าง MDI ใหม่?
m_pLastView มุมมองต้นฉบับแบบขณะที่มุมมองเพิ่มเติมจะจำลอง เป็นในการสร้างมุมมองของหน้าต่างแยกหรือการสร้างมุมมองที่สองบนเอกสาร?
m_pCurrentFrame กรอบหน้าต่างแบบไว้ที่ windows เพิ่มเติมเฟรมจะจำลอง เป็นในการสร้างหน้าต่างเฟรมที่สองบนเอกสาร?

เมื่อสร้างแม่แบบเอกสารเอกสารและส่วนประกอบที่เกี่ยวข้อง มันตรวจสอบข้อมูลที่เก็บอยู่ในโครงสร้างแบบCCreateContext ตัวอย่างเช่น มุมมองควรไม่ถูกสร้างสำหรับเอกสารไม่มีอยู่?

หมายเหตุnbsp  ที่ตัวชี้ในCCreateContextทั้งหมดก็ได้ และสามารถเป็นค่าว่างถ้าไม่ระบุ หรือไม่รู้จัก(&N)?

CCreateContextถูกใช้ โดยฟังก์ชันของสมาชิกที่อยู่ภายใต้ "เห็นยัง ดูคำอธิบายของฟังก์ชันเหล่านี้เฉพาะข้อมูลถ้าคุณวางแผนที่จะแทน?

นี่คือแนวทางทั่วไปบางอย่าง:

ทั่วไป ถ้าคุณใช้เป็นค่าเริ่มต้นของกรอบ คุณสามารถละเว้นCCreateContext ถ้าคุณพยายามปรับเปลี่ยนขั้นสูงเพิ่มเติม รหัส Microsoft Foundation Class ไลบรารีแหล่งข้อมูล หรือ โปรแกรมตัวอย่าง เช่น VIEWEX จะแนะนำคุณ ถ้าคุณลืมพารามิเตอร์จำเป็น การตรวจสอบเงื่อนไขการกรอบจะบอกสิ่งที่คุณลืม?

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับCCreateContextดูตัวอย่าง MFC VIEWEX?

#รวม lt;afxext.h>

แผนภูมิของลำดับชั้น

ดูเพิ่มเติมnbspCFrameWnd::Create, CFrameWnd::LoadFrame, CFrameWnd::OnCreateClient, CSplitterWnd::Create, CSplitterWnd::CreateView, CWnd::Create(&N)

Index