java - 使图形对象移动

标签 java swing graphics awt paintcomponent

在我的代码中,我覆盖了 paintComponent 方法并在 JPanel 中绘制了一个矩形。 然后将 JPanel 添加到 JFrame,我使用一种方法通过线程更新矩形的位置。

矩形确实移动了......但只有当我最小化窗口并再次最大化它时才会移动。所以换句话说......当我看着它时它并没有这样做......矩形将只是坐在那里......但是在我最小化并重新打开窗口之后,矩形将会移动。

我该怎么做才能解决这个问题?

最佳答案

我猜你忘了调用 Repaint JPanel 的 paintComponent 您每次更新对象时都会覆盖它。你只看到最小化/最大化变化的原因是因为那是当 swing 调用组件的重绘时。

关于java - 使图形对象移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16991682/

相关文章:

java - ProgressMonitor 和 SwingWorker 不工作

java - 设置椭圆形 throw 错误

java - 如何用它创建一张万花筒照片?

java - 使用 GSON 解析带有子数组的 JSON 数组?

java - Eclipse:使用 Java 类编译 AspectJ 类

java - Swing Java 中 JComponent 周围奇怪的黑色边框

java - 从图标中获取 "XOR Mask"和 "AND mask"

java - 不生成 Spring Data Jpa Querydsl Q 实体类

java - Maven 构建成功,但我的测试用例没有在 Eclipse 中运行

java - 如何将我的代码从 applet 更改为 JFrame?