【发布时间】:2014-03-28 18:53:01
【问题描述】:
我有一个可视化快速变化数据的 Java 程序。我安排javax.swing.Timer 并每50 毫秒调用一次repaint()。但这需要大量的CPU。因此我开始记录脏区(数据实际上在 50 毫秒内发生了变化),然后调用repaint(x, y, w, h);,其中的参数标识需要重新绘制的脏区。这解决了 CPU 问题,但是当另一个窗口/组件悬停在该组件上时会导致一些故障。
我想检测这种情况,并为整个组件调用repaint()。有办法检测吗?
(我不附加 SSCCE,因为我认为这是一个已知问题,并且因为从我的代码中分离它并不容易。但如果需要我可以这样做)。
【问题讨论】:
标签: java swing window listener repaint