Я создаю сетку кнопок, и я хочу, чтобы кнопки были нажаты только один раз. В моем стекле сетки я пытаюсь установить кнопки setEnabled (false) в моем actionListener. Проблема в том, что я пытаюсь сделать это с помощью цикла for, и у меня есть набор кнопок, поэтому мне нужна переменная (это только часть кода, я вынул ту часть, где я объявил и создал свои кнопки)Имейте переменную во внутреннем классе
public Grid()
{
setLayout(new GridLayout(5,5));
final JButton[] buttons = new JButton[25];
for(int i = 0; i < buttons.length; i++)
{
buttons[i].addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String inputValue = JOptionPane.showInputDialog("Input");
buttons[i].setEnabled(false);
}
});
}
}