-5

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

一、二、三是JButton。(这只是我稍后必须扩展的一些代码)

    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]);
4

2 回答 2

2

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

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

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

于 2013-02-28T18:09:33.930 回答
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]);
于 2013-02-28T18:10:53.790 回答