Как изменить статическую логическую переменную в слушателе действия кнопки?

public class Main
{
  private static boolean SaH=false,LaE=false;

  public static void main(String[] args{
    //other code
    choice1.addActionListener(
            new ActionListener() {
                public void actionPerformed(ActionEvent e) {                        
                     SaH = true;
                     frame.dispose();
                }
            }
        );

   if (SaH==true)
   {
      // more code

Когда я запускаю программу, рамка исчезает через dispose() Способ; но он не введет оператор if (SaH не меняется).

1 ответ

Похоже на Java. Оператор if (SaH==true) выполняется, когда Java-программа загружается так же, как и в методе main. Если вы хотите выполнить его после метода dispose(), создайте новый метод и вызовите метод сразу после dispose() в actionListener

Другие вопросы по тегам