CView

คลาCViewให้หน้าที่การใช้งานเบื้องต้นสำหรับผู้ใช้กำหนดมุมมองคลา มุมมองที่มีแนบเอกสาร และทำหน้าที่เป็นตัวกลางระหว่างเอกสารและผู้ใช้: มุมมองการแสดงรูปของเอกสารบนหน้าจอหรือเครื่องพิมพ์ และแปลผู้ใช้ป้อนข้อมูลเป็นการดำเนินการเมื่อเอกสาร?

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

มุมมองสามารถแนบเอกสารเดียวเท่านั้น แต่เอกสารสามารถมีหลายมุมมองที่แนบมากับครั้ง — ตัวอย่างเช่น ถ้าเอกสารจะแสดง ในหน้าต่างแยก หรือ ในหลายลูก windows ในโปรแกรมประยุกต์อินเทอร์เฟซ (MDI) เอกสารต่าง ๆ โปรแกรมประยุกต์ของคุณสามารถรองรับชนิดของมุมมองที่แตกต่างกันสำหรับชนิดเอกสาร ตัวอย่างเช่น โปรแกรมประมวลผลคำอาจมีทั้งมุมมองข้อความสมบูรณ์ของเอกสารและมุมมองเค้าร่างการแสดงเฉพาะส่วนหัว มุมมองชนิดต่าง ๆ เหล่านี้สามารถอยู่ ใน windows แยกเฟรม หรือ ในบานหน้าต่างที่แยกต่างหากของหน้าต่างเฟรมเดียวถ้าคุณใช้หน้าต่างแยก?

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

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

เมื่อข้อมูลของเอกสารเปลี่ยนแปลง มุมมองที่รับผิดชอบสำหรับการเปลี่ยนแปลงโดยทั่วไปจะเรียกฟังก์ชันCDocument::UpdateAllViewsสำหรับเอกสาร ซึ่งจะแจ้งให้มุมมองอื่น ๆ โดยการเรียกฟังก์ชันOnUpdateสมาชิกแต่ละ เริ่มต้นใช้งานของOnUpdateจะพื้นที่ไคลเอ็นต์ทั้งหมดของมุมมอง คุณสามารถแทนที่การโมฆะเฉพาะเหล่านั้นภูมิภาคของพื้นที่ที่ไคลเอ็นต์ที่แมปไปยังส่วนที่แก้ไขของเอกสาร?

การใช้CViewชั้นที่ได้สืบทอดมาจากนั้น และใช้ฟังก์ชันสมาชิกOnDrawทำการแสดงผลหน้าจอ นอกจากนี้คุณยังสามารถใช้OnDrawเพื่อทำการแสดงตัวอย่างก่อนพิมพ์ และพิมพ์ การจัดการกับกรอบการวนรอบที่พิมพ์สำหรับการพิมพ์ และแสดงตัวอย่างเอกสารของคุณ?

มุมมองการจัดการกับข้อความของแถบเลื่อน ด้วยฟังก์ชันสมาชิกCWnd::OnHScrollและCWnd::OnVScroll คุณสามารถใช้ข้อความแถบเลื่อนการจัดการในฟังก์ชันเหล่านี้ หรือคุณสามารถใช้คลาสCViewมาCScrollViewการจัดการเลื่อนสำหรับคุณ?

นอกจากCScrollViewไลบรารี Microsoft Foundation Class มีเก้าชั้นเรียนอื่น ๆ มาจากCView:

คลาCViewยังมีคลาสที่ได้รับการใช้งานCPreviewViewซึ่งใช้โดยกรอบการแสดงตัวอย่างให้พิมพ์ ชื่อ คลาสนี้จะสนับสนุนคุณลักษณะเฉพาะตัวอย่างก่อนพิมพ์หน้าต่าง เช่นแถบเครื่องมือ ตัวอย่าง - หรือสองหน้าเดียว และการย่อ/ขยาย ที่อยู่ ขยายรูปภาพแสดงตัวอย่าง คุณไม่จำเป็นต้องโทร หรือแทนที่CPreviewViewของสมาชิกฟังก์ชันใด ๆ เว้นแต่ว่าคุณต้องการใช้อินเทอร์เฟซของคุณเองสำหรับพิมพ์ previewnbsp (ตัวอย่างเช่น ถ้าคุณต้องการสนับสนุนการแก้ไขในโหมดตัวอย่างก่อนพิมพ์) ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้CView, หัวข้อสถาปัตยกรรม/มุมมองเอกสารและ การพิมพ์ในVisual c ++ Programmer's Guide นอกจากนี้ ดู30 หมายเหตุทางเทคนิคสำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดตัวอย่างก่อนพิมพ์(&N)?

#รวม lt;afxwin.h>

สมาชิกของคลาส|nbsp คลาสพื้นฐาน| แผนภูมิของลำดับชั้น(&N)

ตัวอย่างnbsp อย่าง MFC HELLO | อย่าง MFC MDIBIND | MFC อย่าง MDIDOCVW(&N)

ดูเพิ่มเติมnbspCWnd, CFrameWnd, CSplitterWnd, CDC, CDocTemplate, CDocument(&N)

Index