如何更改Windows 7菜单的外观?

时间:2010-11-10 16:18:51

标签: winapi visual-c++ windows-7

我的Win32应用程序显示在Win 7上运行时显示的菜单: alt text

这是主题Windows 7以及Windows 7 Aqua的默认值。 请注意,所选菜单条目与其他条目略有不同。我认为它太突出了,因此我正在寻找一种方法来为选定的条目赋予不同的颜色。但遗憾的是,修改菜单颜色的所有可能性在Windows 7中都消失了。在窗口颜色对话框中进行的设置对菜单无效。

但令人惊讶的是,微软自己的应用程序看起来与众不同。即Paint具有不同的颜色和菜单外观:

alt text

这具有良好的对比度,并且比Win32应用程序的默认值要好得多。 Visual Studio 2010看起来也不同:

alt text

我知道VS 2010是基于WPF构建的。我不知道油漆中使用的色带是否以及如何影响菜单外观。我的菜单是使用SetMenu();

动态设置的

我的问题:有没有办法使用API​​或清单或资源来更改应用程序菜单的外观? 或者有没有办法通过设置修改Windows 7中所选菜单项的颜色?

1 个答案:

答案 0 :(得分:2)

您可以创建自己的用户绘制菜单。有关示例,请查看此CodeProject.com文章:http://www.codeproject.com/KB/menus/newmenuxpstyle.aspx

此外,VS 2010并非完全基于WPF构建 - 只有代码编辑器。