私はJavaを初めて使用し、クリックしたときにJFrame内を移動するための円が必要ですが、円はランダムな座標を取得する必要があります。これまでのところ、このコードはクリックされるたびに新しい円を生成しますが、他のすべての円もそこにとどまります。フレーム内を移動するのに必要な円は1つだけです。だから多分誰かが私を少し助けることができます:)
これが私のコードです:
public class test2 extends JFrame implements MouseListener {
int height, width;
public test2() {
this.setTitle("Click");
this.setSize(400,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
addMouseListener(this);
width = getSize().width;
height = getSize().height;
}
public void paint (Graphics g) {
setBackground (Color.red);
g.setColor(Color.yellow);
int a, b;
a = -50 + (int)(Math.random()*(width+40));
b = (int)(Math.random()*(height+20));
g.fillOval(a, b, 130, 110);
}
public void mouseClicked(MouseEvent e) {
int a, b;
a = -50 + (int)(Math.random()*(width+40));
b = (int)(Math.random()*(height+20));
repaint();
}
public void mouseReleased(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public static void main(String arg[]){
new test2();
}
}