0

您可能已经注意到我已经问过的一个问题。

但是一旦我随机应用就会出现问题。正如你所建议的那样。这就是我得到的结果:

https://www.youtube.com/watch?v=EELo_-eh3fA

那是当我使用随机图像开始在屏幕上跳跃的时候。

这是我使用的代码:

int x = (int) (Math.random() * 290);
        int y = (int) (Math.random() * 290);
        g.drawImage(image, x,y,32,32, null);

我怎样才能确保图像没有跳跃。我需要图片在屏幕上随机显示并留在原地!

4

1 回答 1

1

绘画可能出于多种原因而发生,而不仅仅是在您想要的时候。

每次调用paint时,它负责重建整个图形内容。基本上发生了什么,每次绘制图像时,您都会为图像分配一个新的随机位置。

相反,创建一个对类似 a 的引用,Point并在每次再次调用 paint 时使用它。

根据您之前的示例,您不应该覆盖paint,而是应该使用paintComponent并且您必须调用super.paintComponent以确保Graphics正确更新上下文,这在处理时尤其重要,JComponent因为它是透明的

于 2013-11-04T08:56:17.307 回答