תפריטים שצוירו על-ידי הבעלים ואת ההודעה WM_MENUCHAR

תפריטים מלבד אמנותי בעל תפריטים לציין של מנמוניקה תפריט על-ידי הוספת מקף תחתון לצד תו במחרוזת תפריט. פעולה זו מאפשרת למשתמש לבחור את התפריט על-ידי הקלדת alt ואת התו מתפקד תפריט. בתפריטים שצוירו על-ידי הבעלים, עם זאת, אין באפשרותך לציין מנמוניקה תפריט באופן זה. במקום זאת, היישום שלך עליך לעבד את ההודעה WM_MENUCHAR כדי לספק תפריטים שצוירו על-ידי הבעלים של תפריט קיצורים.

ההודעה WM_MENUCHAR נשלח כאשר המשתמש מקליד מנמוניקה התפריט אינו תואם לאף אחת קיצורים מוגדרת מראש של התפריט הנוכחי. ערך שכלול wParam מציין תו ASCII שתואם את המקש הלחוץ המשתמש עם המקש alt . המילה מסדר נמוך של lParam מציין את סוג התפריט הנבחר, יכולים להיות על הערכים הבאים:

המילה הגבוהות של lParam מכיל את נקודת האחיזה של תפריט לתפריט הנוכחי. החלון עם תפריטים שצוירו על-ידי הבעלים יכולים לעבד WM_MENUCHAR כדלקמן:

במקרה WM_MENUCHAR:
      nIndex = קביעת האינדקס של פריט התפריט ייבחר מתוך
               התו שהוקלד, לטפל הנוכחי
               תפריט.
      להחזיר את MAKELRESULT (nIndex, 2) 

שני ב- word הגבוהות של הערך המוחזר מודיע המערכת המילה מסדר נמוך של הערך המוחזר מכיל אינדקס מבוסס אפס של פריט התפריט ייבחר.

הקבועים הבאים (מוגדר החל עם Windows 95 ו- Windows NT גירסה 4.0) מתאימים ערכי ההחזרה אפשריים מתוך הודעת WM_MENUCHAR:

קבוע ערך משמעות
MNC_IGNORE 0 המערכת עליך למחוק את התו המשתמש לחוץ וליצור צפצוף קצר ברמקול המערכת.
MNC_CLOSE 1 המערכת צריכה לסגור את תפריט פעיל.
MNC_EXECUTE 2 המערכת עליך לבחור את הפריט שצוין ב- word מסדר נמוך של הערך המוחזר. חלון הבעלים מקבל הודעה WM_COMMAND.
MNC_SELECT 3 המערכת עליך לבחור את הפריט שצוין ב- word מסדר נמוך של הערך המוחזר.