ฟังก์ชันDefFrameProcให้เริ่มต้นการประมวลผลสำหรับหน้าต่างข้อความที่ไม่มีดำเนินกระบวนการหน้าต่างหน้าต่างเฟรมอินเทอร์เฟซ (MDI) เอกสารหลาย ข้อความหน้าต่างทั้งหมดที่จะไม่ชัดเจนดำเนินตามขั้นตอนในหน้าต่างต้องถูกส่งผ่านไปยังฟังก์ชันDefFrameProcฟังก์ชันDefWindowProcไม่.
(LRESULT DefFrameProc HWND hWnd, / / จัดการหน้าต่างเฟรม MDIHWNDhWndMDIClient, / / จัดการหน้าต่างไคลเอนต์ MDIUINTuMsg, / / ข้อความWPARAMwParam, / / ข้อความแรก พารามิเตอร์LPARAMlParam / / ที่สองพารามิเตอร์ข้อความ )
ค่าส่งกลับผลลัพธ์ของการประมวลผลข้อความที่ระบุ และขึ้นอยู่กับข้อความ ถ้าพารามิเตอร์hWndMDIClientเป็น NULL ค่าส่งกลับจะเหมือนกันสำหรับฟังก์ชันDefWindowProc.
เมื่อกระบวนงานหน้าต่างของโปรแกรมประยุกต์การจัดการข้อความ มันมักจะส่งข้อความไปยังฟังก์ชันDefWindowProcการประมวลผลข้อความ MDI โปรแกรมประยุกต์ใช้ฟังก์ชันDefFrameProcและDefMDIChildProcแทนของDefWindowProcเพื่อให้เริ่มต้นการประมวลผลข้อความ ข้อความทั้งหมดที่โปรแกรมประยุกต์จะมักจะส่งไปยังDefWindowProc (เช่นข้อความ nonclient และความWM_SETTEXT ) ควรถูกส่งผ่านไปยังDefFrameProcแทน ฟังก์ชันDefFrameProcยังจัดการกับข้อความต่อไปนี้:
| ข้อความ | การตอบสนอง |
|---|---|
| WM_COMMAND | เปิดใช้งานหน้าต่างลูก MDI ที่ผู้ใช้เลือก ข้อความนี้ถูกส่งขึ้นเมื่อผู้ใช้เลือกหน้าต่างลูก MDI จากเมนูหน้าต่างของกรอบหน้าต่าง MDI ตัวระบุหน้าต่างซึ่งมาพร้อมกับข้อความนี้ระบุหน้าต่างลูก MDI สามารถใช้งาน. |
| WM_MENUCHAR | เปิดเมนูหน้าต่างของ MDI เด็กหน้าต่างที่ใช้งานเมื่อผู้ใช้กด alt + (ลบ) แป้นพิมพ์. |
| WM_SETFOCUS | ส่งโฟกัสแป้นพิมพ์ไปไคลเอ็นต์หน้าต่าง MDI ซึ่งจะผ่านไปยังหน้าต่างลูก MDI ที่ใช้งานอยู่. |
| WM_SIZE | ปรับขนาดหน้าต่าง MDI ไคลเอ็นต์ให้พอดีกับพื้นที่ของกรอบหน้าต่างใหม่ของไคลเอ็นต์ ถ้ากระบวนการหน้าต่างเฟรมขนาดหน้าต่าง MDI ไคลเอ็นต์ไปยังขนาดแตกต่างกัน มันไม่ควรส่งข้อความไปยังฟังก์ชันDefWindowProc. |
nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ไม่สนับสนุน
หัวข้อ:ประกาศใน winuser.h
ไลบรารีที่นำเข้า:ใช้ user32.lib
Unicode:นำมาใช้เป็น Unicode และ ANSI รุ่นบน Windows NT.
ภาพรวมของอินเทอร์เฟซหลายเอกสารฟังก์ชันอินเทอร์เฟซเอกสารหลาย DefMDIChildProc, DefWindowProc, WM_SETTEXT