这里只是我的代码的一部分,它不能按我的意愿工作。当画在循环中的矩形时,它每次都画在同一个地方,尽管事实上我使用X和Y轴的随机数.I想要绘制矩形5次(因为它设置在循环中)和每个随机坐标。如果整个代码是必要的,请告诉我。谢谢!
public void paintComponent(Graphics g){
random=new Random();
rX=random.nextInt(500);
rY=random.nextInt(500);
super.paintComponent(g);
for(int i=0;i<=5;i++){
g.fillRect(rX,rY,20,20);
}
g.setColor(Color.red);
g.fillOval(x,y,20,20);
}
答案 0 :(得分:3)
目前,您的代码仅生成一次坐标。 (感谢Jon Skeet指出它)
如果你想要它绘制五个不同的trianlges,你应该将调用移到循环内的random.nextInt
。
public void paintComponent(Graphics g){
random=new Random();
super.paintComponent(g);
for(int i=0; i<=4; i++){
rX=random.nextInt(500);
rY=random.nextInt(500);
g.fillRect(rX,rY,20,20);
}
g.setColor(Color.red);
g.fillOval(x,y,20,20);
}