Java Action Listener嵌套循环

时间:2014-07-22 08:49:07

标签: java

我正在进行一场战斗游戏,我是Java主题的新手。我使用嵌套循环进行了网格布局以创建100个JButton,但是我在尝试向所有按钮添加动作侦听器时遇到了困难。有人有办法帮助我吗?

我稍后会发布代码:)

欢呼你们。

enter code here
 public Center_Panel() {
    this.setLayout(new GridLayout(1,2));
    JPanel panel1 = new JPanel(new GridLayout(10, 10));
    panel1.setBackground(Color.BLUE);

    for (int i = 0; i < 10; i++) {
        for (int j = 0; j < 10; j++) {
        JButton button = new JButton(Integer.toString(i + + j));
        panel1.add(button);
        }
        //grid [i][j] = b;
    }

    this.add(panel1);

    JPanel panel2 = new JPanel(new GridLayout(10, 10));

    panel2.setBackground(Color.GREEN);
    for (int i = 0; i < 10; i++) {
        for (int j = 0; j < 10; j++) {
        JButton button = new JButton(Integer.toString(i + + j));
        panel2.add(button);}

1 个答案:

答案 0 :(得分:1)

声明JButton for for循环,然后在for循环中初始化它们。 你需要为JButton创建一个数组,你可以为同一个引用分配不同的字符串。

此代码用于创建JButton并将其添加到面板。

 JButton button[] = new JButton [100];
 int count = 0;
 for (int i = 0; i < 10; i++) {
     for (int j = 0; j < 10; j++) {
        button[count] = new JButton(Integer.toString(i + + j));
        panel1.add(button);
        count++; 
        }
 }

此代码将它们添加到动作侦听器。

 for (int x = 0; x < 100; x++) {
    button[x].addActionListener(this);
 }