CMenu und UserData anlegen



  • Hallo,
    ich möchte in meinem Menü UserData DWORD abspeichern. In der Doku szeht es dass jedem Item ein MIIM_DATA übergeben werden kann. Aber irgendwas mache ich da falsch:

    CMenu submenu;

    MENUITEMINFO Info;
    Info.cbSize = sizeof(MENUITEMINFO);
    Info.fMask = MIIM_DATA;

    submenu.CreatePopupMenu();

    submenu.AppendMenu(MF_STRING,ID_ENTRY1,_T("Entry&1"));
    Info.dwItemData = 99;
    submenu.SetMenuItemInfo(ID_ENTRY1,&Info);

    submenu.AppendMenu(MF_STRING,ID_ENTRY2,_T("Entry&2"));
    Info.dwItemData = 98;
    submenu.SetMenuItemInfo(ID_ENTRY2,&Info);

    submenu.AppendMenu(MF_STRING,ID_ENTRY3,_T("Entry&3"));
    Info.dwItemData = 97;
    submenu.SetMenuItemInfo(ID_ENTRY3,&Info);

    submenu.GetMenuItemInfo(ID_ENTRY1,&MInfo);
    submenu.GetMenuItemInfo(ID_ENTRY2,&MInfo);
    submenu.GetMenuItemInfo(ID_ENTRY3,&MInfo);

    ....

    Ich erhalte bei Item 2 und 3 immer die Data 97 zurück.

    Weiss jemand was ich da falsch mache?



  • Sorry,

    mein Problem war dass:

    ID_ENTRY2 = ID_ENTRY3


Anmelden zum Antworten