关于previous problem,我现在有一个新问题。为了避免内部类,我的类现在实现了actionListener
。我的代码如下:
public class MainGame extends JDialog implements ActionListener {
public MainGame(JDialog owner) {
super(owner, true);
initComponents();
jPanel1.setLayout(new GridLayout(3, 9, 3, 5));
for (char buttonChar = 'a'; buttonChar <= 'z'; buttonChar++) {
String buttonText = String.valueOf(buttonChar);
letterButton = new JButton(buttonText);
letterButton.addActionListener(this);
jPanel1.add(letterButton);
}
newGame();
}
public void actionPerformed (ActionEvent action){
if (action.getSource() == letterButton) {
letterButton.setEnabled(false);
}
}
如何使听众听我的按钮A到Z?因为它只能收听的最后一个按钮,在这种情况下,它是按钮Z。
谢谢。
最佳答案
您的听众可以很好地听所有按钮的事件。您的问题是您似乎认为只能操作类字段。实际上,您完全不需要letterButton
字段来完成您要执行的操作:
public void actionPerformed (ActionEvent action){
((JButton)action.getSource()).setEnabled(false);
}