我正在进行一场战斗游戏,我是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);}
答案 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);
}