为什么我的应用程序的窗口在Windows 8中是灰色的,而不像其他窗口那样基于桌面?

我有一个很大的遗留应用程序,它在我们运行它的每台 Windows 8机器上都显示一个永久的灰色边框,而其他应用程序的其他窗口则准确地使用从桌面背景派生的颜色.对于我的生活,我找不到原因.

我已经尝试了我最好的google-fu来抓取MSDN for API来控制它,但是空洞了.该应用程序看起来像Windows XP,Vista和7中的所有其他应用程序……只是Windows 8是灰色的.我们肯定没有添加Win8特定代码来处理这个问题.

它只是一个外部的MFC窗口,但它内部嵌入了一个.NET / WPF组件和一个支持Direct3D 9的可视区域.

我最好的猜测是,它可能与窗口中有一个Direct3D表面有关,但我无法在任何地方验证.

任何帮助将不胜感激!

谢谢

编辑:灰色匹配没有焦点的效果,我们肯定会玩窗口焦点的游戏…所以可能是它.

问题是开发人员重载OnNcActivate()并在最后返回TRUE.他们需要调用基类(CWnd)OnNcActivate.

如果你看得足够近,这在Windows 7上也是可见的.

相关文章

(1)when you ping a computer from itsafe,the ping command should return the local IP address. (...
1、点击win菜单,点击设置图标 2、选择系统选项 3、选择应用与程序选项 4、拉到最下方,选择程序与功能...
目前一直直接往Windows 2008 R2 Server中复制文件(暂时还没有搭建ftp服务),突然不能复制了,于是百度...
windows下使用vscode配合xebug调试php脚本 要下载有php_xebug.dll扩展的版本,最新版可能没有这个扩展,p...
在控制面板的程序与功能里启用和关闭windows功能打开,适用于linux的windows子系统
效果演示 推荐一个非常牛的文档网站生成器:docsify 我通过这个工具,成功将码云上的个人学习笔记发布到...