如何从txt访问jbutton

时间:2014-06-10 13:18:15

标签: java swing jframe

我用JButton制作了一个电影院,并将它们保存在JPanel中。

在我的txt中,我有01。我读数字并把它放到arraylist。当我setBackground()我的JButton 0时,我设置为绿色,如果来1我设置为红色。但是当代码运行时,所有这些都是绿色的。我该如何解决这个问题?

我尝试重新涂抹和处置。但它没有用。

if(controls.get(n) == 0){
    button.setBackground(Color.GREEN);
    //  repaint();
    //  dispose();
}
if(controls.get(n) == 1){
    //  button.setBackground(Color.RED);
    repaint();
    //  dispose();
}
n++;

1 个答案:

答案 0 :(得分:2)

问题是行button.setBackground(Color.GREEN);

button是对单个按钮的引用,您只更新该JButton的颜色。 下面的代码更新了一个JButtons数组

JButton[] buttons = new JButton[100];
for(int n = 0; n<buttons.length; n++) {
    buttons[n] = new JButton();
    if(controls.get(n) == 0){
        buttons[n].setBackground(Color.GREEN); // update button number n
        repaint();
        dispose();
    }
    if(controls.get(n) == 1){
        buttons[n].setBackground(Color.RED); // update button number n
        repaint();
        dispose();
    }
}