В Java я успешно вывел изображение на экран. Теперь я хочу заставить его двигаться, пропустив цикл for. Цикл for работает 10 раз и спит по 1 секунде каждый раз. Вместо того, чтобы перемещать изображение каждую секунду, как ожидалось, мне нужно подождать 10 секунд, а затем появится 10 изображений.
Вот мой код:
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class ImageDraw extends JComponent {
public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
Image img1 = Toolkit.getDefaultToolkit().getImage("player.png");
int x = 0;
int y = 0;
for(int i = 0;i<10;i++){
try {
Thread.sleep(1000);
x+=10;
y+=10;
g2.drawImage(img1, x, y, this);
repaint();
} catch (InterruptedException e) {
e.printStackTrace();
System.exit(0);
}
} //end for
} //end paint
} //end class
Как бы я сделал так, чтобы изображение выглядело так, как будто оно движется каждый раз, когда проходит через цикл?