我目前正在构建一个小程序并遇到了更新/重绘问题。我绘制了更新鼠标坐标的字符串。当我移动鼠标时,问题就开始了。坐标更新(通过方法repaint()
内的mouseMoved()
方式,但小程序闪烁,直到我停止移动。
我试过寻找解决方案,但他们只处理存在图像的情况。我的小程序只包含按钮、文本 ( drawString()
) 和渐变背景。当它闪烁时,除了按钮之外的所有东西都会闪烁。在处理不使用图像文件的小程序时,是否有其他方法可以停止闪烁?
在 Java Swing 中有一个Event Dispatch Thread (EDT) 的概念:
您可以尝试输入您的Applet.init()
方法
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
并仅在 EDT 中执行所有相关的 GUI 内容。