ฟังก์ชันAppendMenuผนวกรายการใหม่ไปส่วนท้ายของแถบเมนูที่ระบุ เมนูแบบหล่นลง เมนูย่อย หรือเมนูทางลัด คุณสามารถใช้ฟังก์ชันนี้เพื่อระบุเนื้อหา ลักษณะ และลักษณะการทำงานของรายการเมนู.
ฟังก์ชันAppendMenuจะได้ถูกแทนที่ โดยฟังก์ชันInsertMenuItem คุณยังสามารถใช้AppendMenuอย่างไรก็ตาม ถ้าคุณไม่จำเป็นใด ๆ ในคุณลักษณะเพิ่มเติมของInsertMenuItem.
(BOOL AppendMenu HMENU hMenu, / / จัดการเมนูเพื่อเปลี่ยนUINTuFlags, / / ตั้งค่าสถานะรายการเมนูUINTuIDNewItem, / / ระบุรายการเมนูหรือหมายเลขการอ้างอิงแบบหล่นลงเมนูหรือเมนูย่อยLPCTSTRlpNewItem / / เนื้อหารายการเมนู);
| ค่า | คำอธิบาย |
|---|---|
| MF_BITMAP | ประกอบด้วยตัวจัดการรูปบิตแมป. |
| MF_OWNERDRAW | ประกอบด้วยค่า 32 บิตโดยโปรแกรมประยุกต์ที่สามารถใช้เพื่อรักษาข้อมูลเพิ่มเติมที่เกี่ยวข้องกับรายการเมนู ค่าอยู่ในสมาชิกitemDataของโครงสร้างที่ชี้ไปตามพารามิเตอร์ของ WM_MEASURE lparamหรือ WM_DRAWITEM ส่งเมื่อมีสร้างเมนู หรือมีการปรับปรุงลักษณะที่ปรากฏของข้อความ. |
| MF_STRING | ประกอบด้วยตัวชี้ในสายอักขระที่หยุดการทำงานเป็น null. |
ถ้าฟังก์ชันสำเร็จ ค่าส่งกลับจะไม่ใช่ศูนย์.
ถ้าฟังก์ชันล้มเหลว ส่งคืนค่าเป็นศูนย์ การขอเพิ่มเติมข้อมูลข้อผิดพลาด โทร GetLastError.
แอพลิเคชันต้องเรียกฟังก์ชันDrawMenuBarทุกครั้งเปลี่ยนแปลงเมนู เมนูอยู่ในหน้าต่างแสดงหรือไม่.
รับ accelerators แป้นพิมพ์เพื่อทำงานกับบิตแมปหรือรายการเมนูวาดเจ้า เจ้าของเมนูต้องประมวลผลข้อความ WM_MENUCHAR ดูข้อมูลเพิ่มเติมOwner-Drawn เมนูและข้อความ WM_MENUCHAR.
สามารถกำหนดค่าสถานะต่อไปนี้ในพารามิเตอร์uFlags:
| ค่า | คำอธิบาย |
|---|---|
| MF_BITMAP | ใช้บิตแมปเป็นรายการเมนู หมายเลขอ้างอิงกับบิตแมปประกอบด้วยพารามิเตอร์lpNewItem. |
| MF_CHECKED | วางเครื่องหมายถูกที่อยู่ถัดจากรายการเมนู ถ้าแอพลิเคชันมีบิตแมปของเครื่องหมาย (ดูSetMenuItemBitmapsนี้แสดงสถานะเครื่องหมายบิตแมปไปรายการเมนู. |
| MF_DISABLED | ปิดใช้งานรายการเมนูไม่สามารถเลือก แต่สีขาวพื้นธงไม่เทานั้น. |
| MF_ENABLED | รายการเมนูช่วยให้เพื่อที่จะสามารถเลือกได้ และคืนค่าจากสถานะที่เป็นสีเทา. |
| MF_GRAYED | ปิดใช้งานรายการเมนู และ grays จึงไม่สามารถเลือก. |
| MF_MENUBARBREAK | ฟังก์ชันเดียวกันเป็น MF_MENUBREAK ค่าสถานะสำหรับแถบเมนู สำหรับเมนูแบบหล่นลง เมนูย่อย หรือเมนูลัด คอลัมน์ใหม่คือแยกจากคอลัมน์เก่า ด้วยเส้นแนวตั้ง. |
| MF_MENUBREAK | วางสินค้าบนบรรทัดใหม่ (สำหรับแถบเมนู) หรือ ในคอลัมน์ใหม่ (สำหรับเมนูแบบหล่นลง เมนูย่อย หรือเมนูทางลัด) โดยไม่มีการแบ่งคอลัมน์. |
| MF_OWNERDRAW | ระบุว่า สินค้านั้น วาดเจ้าของสินค้า ก่อนแสดงเมนูเป็นครั้งแรก หน้าต่างที่เป็นเจ้าของเมนูได้รับข้อความWM_MEASUREITEMในการเรียกความกว้างและความสูงของรายการเมนู WM_DRAWITEMถูกแล้วส่งข้อความลงในกระบวนงานของหน้าต่างของเจ้าของหน้าต่างเมื่อใดก็ ตามต้องมีการปรับปรุงลักษณะที่ปรากฏของรายการเมนู. |
| MF_POPUP | ระบุว่า รายการเมนูที่เปิดแบบหล่นลงเมนูหรือเมนูย่อย พารามิเตอร์uIDNewItemระบุหมายเลขอ้างอิงการแบบหล่นลงเมนูหรือเมนูย่อย ธงนี้ใช้ในการเพิ่มชื่อเมนูแถบเมนู หรือรายการเมนูที่เปิดเมนูย่อยไปยังเมนูแบบหล่นลง เมนูย่อย หรือเมนูทางลัด. |
| MF_SEPARATOR | วาดเส้นแนวนอน dividing ธงนี้ถูกใช้เฉพาะในเมนูแบบหล่นลง เมนูย่อย หรือเมนูทางลัด บรรทัดไม่สามารถสีเทา ปิดการใช้งาน หรือเน้น พารามิเตอร์lpNewItemและuIDNewItemจะถูกละเว้น. |
| MF_STRING | ระบุว่า รายการเมนูที่เป็นสตริงข้อความ พารามิเตอร์lpNewItemชี้ไปยังสตริง. |
| MF_UNCHECKED | ไม่ได้ทำเครื่องหมายถูกที่อยู่ถัดจากรายการ (ค่าเริ่มต้น) ถ้าแอพลิเคชันหน้า ๆ บิตแมปของเครื่องหมาย (ดูที่SetMenuItemBitmaps), ธงนี้แสดงบิตแมปไม่กาเครื่องหมายที่อยู่ติดกับรายการเมนู. |
กลุ่มของค่าสถานะต่อไปนี้ไม่สามารถใช้ร่วมกัน:
Windows CE: ค่าสถานะต่อไปนี้ไม่สามารถใช้สำหรับพารามิเตอร์fuFlags
MF_BITMAP
MF_DISABLED
MFS_GRAYED
สามารถใช้ MF_GRAYED ในตำแหน่งของ MF_DISABLED และ MFS_GRAYED.
Windows CE 1.0 ไม่สนับสนุนเมนูแบบเรียงซ้อน ถ้าคุณกำลังใช้ Windows CE 1.0 คุณไม่สามารถแทรกเมนูที่มี MF_POPUP ลงในเมนูผุดขึ้นที่อื่น.
ใน Windows CE 1.0 ค่าสถานะต่อไปนี้ไม่สนับสนุน:
MF_POPUP
MF_MENUBREAK
MF_MENUBARBREAK
ในเวอร์ชัน Windows CE 2.0 และรุ่นที่ใหม่กว่า ค่าสถานะเหล่านี้ได้รับการสนับสนุน นอกจากนี้มีสนับสนุนเมนูแบบเรียงซ้อน.
ภาพรวมของเมนูเมนูฟังก์ชัน CreateMenu, DeleteMenu, DestroyMenu, DrawMenuBar, InsertMenu, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps