gpt4 book ai didi

c++ - 无法创建弹出菜单

转载 作者:行者123 更新时间:2023-11-28 03:31:20 26 4
gpt4 key购买 nike

我正在尝试以编程方式创建菜单,但下面的代码无法在第二个菜单项(文件的邻居)中创建弹出菜单(在第一个文件->新建等中。一切都很好)。当我单击“查看”时,它什么都不做,而是显示 SelectAll 命令。

HMENU menu = CreateMenu();
HMENU subMenu1 = CreatePopupMenu();

AppendMenu(subMenu1,MF_STRING,IDC_MENU_NEW,_T("New"));
AppendMenu(subMenu1,MF_STRING,IDC_MENU_EXIT,_T("Exit"));

AppendMenu(menu,MF_POPUP,(UINT_PTR)subMenu1,_T("File"));

SetMenu(dlg,menu);
HMENU menu2 = CreateMenu();
HMENU subMenu2 = CreatePopupMenu();

AppendMenu(menu,MF_INSERT,(UINT_PTR)menu2,_T("View"));
AppendMenu(subMenu2,MF_STRING,IDC_MENU_EXIT2,_T("Select All"));

AppendMenu(menu2,MF_POPUP,(UINT_PTR)subMenu2,_T("View"));

我做错了什么?你能指出我在哪里可以找到信息吗?

最佳答案

我相信你的错误是在这行代码上

AppendMenu(menu,MF_INSERT,(UINT_PTR)menu2,_T("View"));

MF_INSERT 不是 AppendMenu 的有效标志,实际上映射到 MF_ENABLED。在这种情况下,我相信您想使用 MF_POPUP 来插入“查看”子菜单。

MSDN 是这样描述 MF_POPUP 的:

Specifies that the menu item opens a drop-down menu or submenu. The uIDNewItem parameter specifies a handle to the drop-down menu or submenu. This flag is used to add a menu name to a menu bar, or a menu item that opens a submenu to a drop-down menu, submenu, or shortcut menu.

关于c++ - 无法创建弹出菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12500093/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com