java - SWT PaintEvent从哪里来以及如何影响它

标签 java eclipse swt

我正在尝试使用 PaintListeners 用 SWT 绘制和制作动画。我想影响动画的时间,所以我看得很远,但找不到任何解释 PaintEvents 生成的位置和方式以及如何影响它的内容,例如强制执行帧速率或发送PaintEvent 仅用于 cetrain Widgets。

那么,如何做到这一点呢?而且,应该这样做吗? - 在该主题上找不到任何内容表明可能有更好的方法。

最佳答案

PaintEvents 由 SWT 在每次需要时为您生成。例如,第一次显示小部件时或由于窗口已移动而再次显示小部件后。

您可以使用以下方法强制在控件上发生绘制事件:

control.redraw();
control.update();

参见此处:http://help.eclipse.org/helios/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/widgets/Control.html#redraw ()

关于java - SWT PaintEvent从哪里来以及如何影响它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3856371/

相关文章:

java - 异常: submitTopology failed: out of sequence response

java - 尝试 FilteredTree 时出现 AssertionFailedException

Java swt 图像插值

java - 使用和不使用 GZip 和 Jar 文件(内存中的 GZip?)访问给定文本文件行的最快方法

java - Akka 中的 poststop 和 terminate 之间的区别?

java - 从不同的文件系统加载类文件

java - 只读组合框

java - Eclipse 相当于 mvn tomcat6 :run?

java - Android 应用程序可在 AVD 上运行但不能在手机上运行?

multithreading - SWT 中的线程无效访问错误