java将ActionListeners添加到小程序中的按钮数组中
我做了一个游戏,用户必须输入一个相当于十进制的二进制数。用户单击在0和1之间切换的按钮。这在eclipse中作为应用程序运行很好,但当我尝试作为小程序运行时,它并没有正确运行。只有第一个按钮注册了任何事件(仅添加了第一个操作侦听器?)我怎样才能让它工作?欢迎任何有用的建议
for(int i = 0; i < buttons.length; i++) {
buttons[i] = new JButton("0");
buttons[i].setActionCommand("0");
buttons[i].setEnabled(true);
bpanel.add(buttons[i]);
}
for (int i = 0; i<size;){
buttons[i].addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e) {
String choice = (String) e.getActionCommand();
# 1 楼答案
所有按钮都有相同的文本和相同的操作命令
您可能应该将第一个循环中的第一行更改为:
# 2 楼答案
您在所有按钮上设置了相同的操作命令:
buttons[i].setActionCommand("0");
这里有一个特殊的代码:
String choice = (String) e.getActionCommand();
每次点击按钮都返回0尝试为每个按钮设置不同的操作命令