代码之家  ›  专栏  ›  技术社区  ›  Avrom

Java 1.6中JAVA Swing应用程序中的绘画问题

  •  5
  • Avrom  · 技术社区  · 15 年前

    我正在研究一个Swing应用程序(当前在Java 1.6更新11上运行),它有一些间歇性的画图刷新问题(例如有伪像等)。这只发生在应用程序的某些用户身上,而不发生在其他用户身上。

    在做了一些研究之后,我发现设置属性 sun.java2d.d3d false 可能会有帮助,事实上,它对我们的一个用户有帮助。

    现在有其他用户抱怨这个问题,我正在考虑将该属性设置为 适用于所有用户。

    我的基本问题如下:

    这到底是什么原因?是视频卡吗?是司机吗?它是来自太阳的虫子吗?(例如http://bugs.sun.com/bugdatabase/view_bug.do?Bug_id=6635462)三者的组合?

    换言之,是最好简单地关闭此属性,还是仅影响某些视频卡(其中最新驱动程序的更新将修复这些卡)?

    2 回复  |  直到 15 年前
        1
  •  2
  •   DJClayworth    15 年前

    Java在R6更新10中引入了一种基于Direct3D渲染图形的管道。 here 它只支持Nvidia和ATI卡,这意味着任何不使用这些卡的人都可能有问题。由于这是最近的一项创新,我建议使用旧驱动程序的人也可能会遇到问题。升级视频驱动程序可能会修复第一种情况,但不会修复最后一种情况。

    如果将sun.java2d.d3d设置为false,则可能发生的最坏情况是,有些用户无法达到理论上可以达到的性能。你必须权衡一下这是否比你目前看到的问题更可取。

        2
  •  1
  •   01es    15 年前

    是否在EDT上执行所有的喷漆和模型更改操作(例如更改表格模型等)?