一段时间以来,我一直在努力解决 MFC 中的这个故障。它可以很容易地观察到。
- 在 Visual Studio 2012 Update 1 中创建一个新的 MFC 应用程序,
- 在向导设置中设置多个文档/选项卡式文档,Office 2007 黑色风格
- 在 Windows 7 上运行应用程序:
Windows 7 Aero 主题打开时启动的应用程序:
Windows 控制面板中的主题设置为 Windows 7 Basic:
Windows 控制面板中的主题设置回 Windows 7 Aero:
请注意 aero 关闭时未上漆的间隙,以及 aero 重新打开时缺少关闭按钮的黑色标题。
这个问题一直存在,在 Visual Studio 2010 向导生成的应用程序中,过去可以通过 Windows 控制面板切换主题,但在使用DwmEnableComposition() API 调用禁用/重新启用 aero 后仍然显示黑色标题。
我希望在 Visual Studio 2012 中问题得到解决,但似乎没有。那么我能做些什么来解决这个错误呢?