ฟังก์ชันGetSystemMenuจะช่วยให้แอปพลิเคชันในการเข้าถึงเมนูหน้าต่าง(หรือที่เรียกว่าเมนูระบบหรือเมนูตัวควบคุม) สำหรับการคัดลอก และปรับเปลี่ยน.
(HMENU GetSystemMenu HWND hWnd, / / จัดการหน้าต่างเมนูหน้าต่างของตัวเองBOOLbRevert / / ตั้งค่าสถานะ);
ถ้าพารามิเตอร์นี้เป็น TRUE, GetSystemMenuรีเซ็ตเมนูหน้าต่างกลับไปเป็นสถานะเริ่มต้น เมนูหน้าต่างก่อนหน้า ถ้ามี ถูกทำลาย.
ถ้าพารามิเตอร์bRevertเป็น FALSE ค่าส่งกลับเป็นหมายเลขอ้างอิงการสำเนาของเมนูหน้าต่าง ถ้าพารามิเตอร์bRevertเป็น TRUE ส่งคืนค่าเป็น NULL.
หน้าต่างใด ๆ ที่ไม่ได้ใช้ฟังก์ชันGetSystemMenuเพื่อทำสำเนาตัวเองของเมนูหน้าต่างเมนูมาตรฐานหน้าต่างที่ได้รับ.
เมนูหน้าต่างแรกประกอบด้วยรายการที่ มีตัวระบุค่าต่าง ๆ เช่น SC_CLOSE, SC_MOVE และ SC_SIZE.
รายการเมนูบนเมนูหน้าต่างส่งข้อความWM_SYSCOMMAND.
รายการเมนูที่กำหนดไว้ล่วงหน้าหน้าต่างทั้งหมดมีรหัสตัวเลขมีค่ามากกว่า 0xF000 ถ้าโปรแกรมประยุกต์เพิ่มคำสั่งไปยังเมนูหน้าต่างมันควรใช้หมายเลขรหัสน้อยกว่า 0xF000.
นอกจากนี้ระบบอัตโนมัติ grays รายการบนเมนูมาตรฐานหน้าต่างขึ้นอยู่กับสถานการณ์ โปรแกรมประยุกต์ที่สามารถดำเนินการของตนเองตรวจสอบหรือการ graying โดยตอบสนองต่อข้อความWM_INITMENUที่ส่งก่อนจะแสดงเมนูใด ๆ.
Windows CE: Windows CE สนับสนุนระบบเมนู แต่GetSystemMenuถูกนำมาใช้เป็นแมโครเพื่อรักษาความเข้ากันได้กับรหัสที่มีอยู่ คุณสามารถใช้เมนูหมายเลขอ้างอิงที่ส่งกลับ โดยแมโครนี้ปิดกล่องปิดแบบเดียวกับที่คุณต้องการภายใต้สถาปัตยกรรมเดสก์ทอป Windows ไม่มีการใช้อื่น ๆ ไม่มีสำหรับค่าส่งคืนใน Windows CE พารามิเตอร์brevertจะถูกละเว้น ใช้รหัสต่อไปนี้เพื่อปิดใช้งานปุ่มปิด
EnableMenuItem (GetSystemMenu (hwnd, FALSE), SC_CLOSE, MF_BYCOMMAND | MF_GRAYED);
nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ต้องการเวอร์ชัน 1.0 หรือรุ่นใหม่กว่า
หัวข้อ:ประกาศใน winuser.h
ไลบรารีที่นำเข้า:ใช้ user32.lib.
ภาพรวมของเมนูเมนูฟังก์ชัน GetMenu, WM_INITMENU, WM_SYSCOMMAND