เขียนกระบวนงานหน้าต่างเฟรม

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

ข้อความ การตอบสนอง
WM_COMMAND เปิดใช้งานหน้าต่างลูก MDI ที่ผู้ใช้เลือก ข้อความนี้ถูกส่งขึ้นเมื่อผู้ใช้เลือกหน้าต่างลูก MDI จากเมนูหน้าต่างของกรอบหน้าต่าง MDI ตัวระบุหน้าต่างซึ่งมาพร้อมกับข้อความนี้ระบุหน้าต่างลูก MDI สามารถใช้งาน.
WM_MENUCHAR เปิดเมนูหน้าต่างของ MDI เด็กหน้าต่างที่ใช้งานเมื่อผู้ใช้กด alt + – (ลบ) แป้นพิมพ์.
WM_SETFOCUS ส่งโฟกัสแป้นพิมพ์ไปไคลเอ็นต์หน้าต่าง MDI ซึ่งจะผ่านไปยังหน้าต่างลูก MDI ที่ใช้งานอยู่.
WM_SIZE ปรับขนาดหน้าต่าง MDI ไคลเอ็นต์ให้พอดีกับพื้นที่ของกรอบหน้าต่างใหม่ของไคลเอ็นต์ ถ้ากระบวนการหน้าต่างเฟรมขนาดหน้าต่าง MDI ไคลเอ็นต์ไปยังขนาดแตกต่างกัน มันไม่ควรส่งข้อความไปยังฟังก์ชันDefWindowProc.

กระบวนการหน้าต่างเฟรมใน Multipad จะเรียกว่า MPFrameWndProc การจัดการข้อความอื่น ๆ โดย MPFrameWndProc คล้ายกับโปรแกรมประยุกต์ที่ไม่ใช่ MDI ข้อความที่WM_COMMANDใน Multipad ได้รับการจัดการ โดยภายในกำหนดฟังก์ชัน CommandHandler สำหรับข้อความคำสั่งที่ไม่ได้มีจัดการ Multipad, CommandHandler เรียกฟังก์ชันDefFrameProc ในกรณีที่ Multipad ไม่ใช้DefFrameProcโดยค่าเริ่มต้น ผู้ใช้ไม่สามารถเปิดหน้าต่างลูกจากเมนูหน้าต่างเนื่องจากข้อความใน WM_COMMAND ที่ส่ง โดยการคลิกรายการในเมนูของหน้าต่างจะสูญหาย.

Index