我正在尝试将两个主菜单合并在一起,但是在使用子项获得正确结果方面遇到了问题。我在我的MenuItems上使用GroupIndex属性来控制合并/插入。
Menu1(带有groupindices)就像这样
Menu2就像这样
我正在做
Menu1.Merge(Menu2);
我希望组合菜单在Edit菜单中有一个新的顶级菜单“Widgets”和一个新的“Clear”命令。 “Widgets”工作正常,但编辑菜单丢失了剪切和粘贴,这不是我想要的。
如何停止剪切和粘贴命令消失?
答案 0 :(得分:6)
Delphi中的菜单合并功能与您期望的有点不同:它是非递归的(不幸的是!)。这意味着当您拨打Menu1.Merge
时,Menu1的“编辑”菜单会被Menu2的替换。
您有两种选择:
前一段时间我遇到了同样的问题(见this SO question):
我最终得到的是, 使用 Toolbar2000 我的所有菜单和工具栏的包。 然后你可以下载一个非常好的 一段代码,叫做 TB2Merge, 这正是你想要的。
你也可以在TB2Merge上建立任何自定义编写的菜单合并代码,我猜......