将ActionListener添加到小程序中的按钮数组中



我制作了一个游戏,用户必须输入一个相当于十进制的二进制数。用户单击在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();        

您在所有按钮上都设置了相同的操作命令:
buttons[i].setActionCommand("0");

这里有一个特殊的代码:
String choice = (String) e.getActionCommand();每次点击按钮返回0

尝试为每个按钮设置不同的操作命令

所有按钮都有相同的文本和相同的操作命令。

您可能应该将第一个循环中的第一行更改为以下内容:

buttons[i] = new JButton(i + "");
buttons[i].setActionCommand(i + "");

相关内容

  • 没有找到相关文章

最新更新