Java,.setBackground到数组中的值

时间:2013-02-28 18:05:53

标签: java swing

我试图将按钮背景设置为数组中保存的值,但是我得到了错误?

一,二,三是JButtons。 (这只是我稍后需要扩展的一些代码)

    public void actionPerformed( ActionEvent event ) {
        String[] colors = {"GREEN","WHITE","ORANGE"};
        if(event.getSource() == one){
            String text = "Clicks = " + ++ clicks1 + ". ";
            one.setText( text );           
            one.setBackground(Color.colors[0]);
            two.setBackground(Color.colors[1]);
            three.setBackground(Color.colors[2]);

2 个答案:

答案 0 :(得分:2)

问题是setBackground采用了一种颜色。所以你想要做的是:

Color[] colors = {Color.GREEN, Color.RED, Color.ORANGE};

然后设置背景:one.setBackground(colors[0]);

答案 1 :(得分:1)

你应该为setBackground方法提供类似Color.RED的东西,你使用它的语法错误。 定义Color数组,而不是String数组;像这样的东西

public void actionPerformed( ActionEvent event ) {
    Color[] colors = {Color.GREEN,Color.WHITE, Color.ORANGE};
    if(event.getSource() == one){
        String text = "Clicks = " + ++ clicks1 + ". ";
        one.setText( text );           
        one.setBackground(colors[0]);
        two.setBackground(colors[1]);
        three.setBackground(colors[2]);