เมนูอื่น ๆ นอกเหนือจากเมนูวาดเจ้าของสามารถระบุสิ่งเมนู โดยใส่ขีดล่างติดกับอักขระในสายอักขระเมนู นี้ช่วยให้ผู้ใช้สามารถเลือกเมนูได้ โดยการพิมพ์altและอักขระ mnemonic เมนู ในเมนูวาดเจ้า อย่างไรก็ตาม คุณไม่สามารถระบุสิ่งเมนูในลักษณะนี้ แทน โปรแกรมประยุกต์ของคุณต้องประมวลผลข้อความWM_MENUCHARให้วาดเจ้าของเมนูเมนู mnemonics.
มีส่งข้อความ WM_MENUCHAR เมื่อผู้ใช้ชนิดนีโมนิคเป็นเมนูที่ไม่ตรงกับของ mnemonics กำหนดไว้ล่วงหน้าของเมนูปัจจุบัน ค่าที่อยู่ในwParamระบุอักขระ ASCII ที่สอดคล้องกับหมายเลขผู้ใช้กดคีย์alt คำต่ำใบสั่งของlParamระบุชนิดของเมนูที่เลือก และสามารถอยู่ในค่าต่อไปนี้:
คำสูงใบสั่งของlParamมีหมายเลขอ้างอิงของเมนูไปเมนูปัจจุบัน หน้าต่างที่ มีเมนูวาดเจ้าของสามารถประมวลผล WM_MENUCHAR เป็นดังนี้:
กรณีที่ WM_MENUCHAR:
nIndex =ระบุดัชนีของเมนูสินค้าคุณสามารถเลือกจาก
อักขระที่ได้พิมพ์ไว้และหมายเลขอ้างอิงการปัจจุบัน
เมนู
กลับ MAKELRESULT (nIndex, 2)
แจ้งให้ทราบทั้งสองในคำสูงลำดับของค่าส่งกลับถึงระบบคำต่ำลำดับของค่าส่งกลับประกอบด้วยดัชนี zero-based ของรายการเมนูถูกเลือก.
ค่าคงดังต่อไปนี้ (กำหนดเริ่ม ด้วยรุ่น Windows 95 และ Windows NT 4.0) ตรงกับค่าที่ส่งกลับไปได้จากข้อความ WM_MENUCHAR:
| คง | ค่า | ความหมาย |
|---|---|---|
| MNC_IGNORE | 0 | ระบบควรละทิ้งอักขระที่กด และสร้างเสียงบี๊ปสั้น ๆ บนลำโพงระบบผู้ใช้. |
| MNC_CLOSE | 1 | ระบบควรปิดเมนูใช้งานอยู่. |
| MNC_EXECUTE | 2 | ระบบควรเลือกสินค้าที่ระบุในใบสั่งต่ำคำของค่าส่งคืน เจ้าของหน้าต่างได้รับข้อความWM_COMMAND. |
| MNC_SELECT | 3 | ระบบควรเลือกสินค้าที่ระบุในใบสั่งต่ำคำของค่าส่งคืน. |