2

我在 C++ 中将子菜单项添加到我的窗口菜单时遇到了麻烦。我正在为我的游戏添加一些(确切地说是 20 个)保存槽。

这是我保存槽的代码:

    HMENU win32MENU = CreateMenu();//Menu bar

    HMENU win32SETTINGS = CreateMenu();//Settings option
        HMENU win32SAVESLOTS = CreateMenu();//Save Slots

    AppendMenu(win32MENU,MF_POPUP,(UINT_PTR)win32SETTINGS,"Settings");

    //Settings
    AppendMenu(win32SETTINGS,MF_STRING,(UINT_PTR)win32SAVESLOTS,"Save                       Ctrl+S");

        //Save Slots
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Default ~");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 1");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 2");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 3");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 4");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 5");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 6");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 7");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 8");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 9");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 10");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 11");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 12");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 13");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 14");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 15");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 16");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 17");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 18");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 19");
        AppendMenu(win32SAVESLOTS,MF_STRING,NULL,"Save Slot 20");

提前致谢。

4

1 回答 1

2

改变:

AppendMenu(win32SETTINGS,MF_STRING,(UINT_PTR)win32SAVESLOTS,"Save Ctrl+S");

AppendMenu(win32SETTINGS,MF_STRING | MF_POPUP,(UINT_PTR)win32SAVESLOTS,"Save Ctrl+S");

还有,改变

HMENU win32SAVESLOTS = CreateMenu();//Save Slots

HMENU win32SAVESLOTS = CreatePopupMenu();//Save Slots

于 2013-04-12T20:20:48.440 回答