Windows 7更新KB4034664(2017年8月)后在多个屏幕上显示问题

时间:2017-08-16 10:04:42

标签: java swing windows-7 multiple-monitors

我们的应用程序的用户一直遇到Swing GUI无法正确绘制的问题。

所有有问题的用户之间的通用链接是他们最近应用了Windows更新。用户报告说,对话框在某些显示器上正确绘制,但在其他显示器上没有。

我们看到的问题的示例*:

Application draw issues

用户还会报告仅显示框架的对话框,否则是透明的。如果UI线程被阻止,你会看到同样的问题。

可能是什么问题?

*我无法发布实际应用的屏幕截图,因为它包含敏感信息

1 个答案:

答案 0 :(得分:5)

更新:此问题已在更新KB4039884中修复。

这似乎是由最近的补丁引起的相当广泛的问题。它不仅限于Java:

  

似乎是微软的更新KB4034664(和KB4034679)   Windows 7和Windows Server导致显示问题   第二个屏幕上的应用程序。

Born CityComputer WorldMicrosoft themselves报告:

  

如果机器连接了多台显示器和屏幕   编号不是按顺序,一些应用程序将体验   渲染问题。

您应该能够通过回滚补丁来解决问题。这是一个安全更新(链接上面详细说明了所包含的内容),所以如果你特别厌恶风险,你可能不想这样做。

Microsoft将变通方法列为:

  
      
  1. 启用桌面合成(需要显卡支持)。
  2.   
  3. 确保主显示器位于显示器布局的左上角。
  4.   

Example of suggested monitor layout

您还可以尝试切换到单个显示器设置,或对显示器配置进行其他更改(控制面板>显示>更改显示设置)。一些报告推测哪个监视器被设置为“主显示器”可能会产生影响。

您可能还想尝试以下标记:-Dsun.noddraw=true