私のクラスはこんな感じです。
import java.awt.*;
import javax.swing.*;
public class Painter extends JPanel {
int x=200;
int y=200;
int newX;
int newY;
Painter(){
setPreferredSize(new Dimension(400,400));
}
public void moveSquare(int newX, int newY){
if(newY != y|| newX != x){
repaint(x,y, 10, 10);
y = newY;
x = newX;
repaint(x,y, 10, 10);
}
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.setColor(Color.BLACK);
g.fillRect(x, y, 10, 10);
}
}
メソッドは別のクラスから呼び出されます。x
とy
doの値は、本来あるべき姿に変わります。しかし、正方形は動かない。ここで何か間違ったことをしましたか?
編集 はい、「スーパー」と呼んでいます。ここのコードをコピーして編集したときに誤って削除してしまいました。今それを編集して戻しました。