Java-随机产生矩形

时间:2013-07-18 07:46:30

标签: java user-interface random rect

这里只是我的代码的一部分,它不能按我的意愿工作。当画在循环中的矩形时,它每次都画在同一个地方,尽管事实上我使用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);

}

1 个答案:

答案 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);

}