我意识到这有点旧:现在大多数MS的东西都是基于色带的,但我决定玩撕纸菜单只是为了它的乐趣。撕掉菜单首次出现在VS2008中。唯一的示例程序应该在Wordpad中,但那段示例代码不再可用。只有VS2003和VS2005版本可用,但这是在撕下菜单之前。除了代码项目版本,完全不同,我找不到任何示例代码。 MSDN帮助只是告诉你每个例程的作用,但网站上没有任何内容告诉你如何在MFC中创建撕下菜单。
经过大约3个小时的搞乱,我设法让MFC中的CMenuTearOffManager工作,我可以看到撕下菜单。如果有兴趣的话,我可以在SO文档中添加如何执行此操作。我可以添加一个SVE,但它会有很多自动生成的MFC代码,总共可以达到几百行。我可以拉上它,但我不知道如何将zip文件添加到SO。
这就是撕下菜单的样子。点击虚线并向下拖动即可撕掉。
这就是它被撕掉时的样子
这是垂直拉伸时的样子
没有重写经理,可能还有整个MFC菜单系统,是否有一种简单的方法