0

我有 25 个 jButton,我想从循环中更改它们的文本。这是我的 1 个按钮的代码..

void changeText(){
            jButton1.setText(jButton1.getText().toUpperCase());

    }

我想对所有其他按钮执行相同的操作,而无需为每个按钮编写方法。

可以使用这样的东西吗?

void changeText(){
        for(int i=0;i<25;i++){
            String x = "jButton"+i;
            x.setText(x.getText().toUpperCase());
        }
    }

这肯定行不通。请给我一个方法。

4

1 回答 1

2

您可以通过将按钮添加到集合来做到这一点。

像这样的东西:

// initialization of jbuttons:
List<JButton> buttons = new ArrayList<JButton>();
JButton jbutton1 = new JButton();
// .. set properties
buttons.add(jbutton1);

// add more jbuttons to the list

稍后您可以遍历按钮列表:

for (JButton button : buttons) {
  button.setText(button.getText().toUpperCase());
}
于 2013-02-08T17:14:56.900 回答