Сменить слушатель события кнопки при нажатии - Java

Узнай цену своей работы

Формулировка задачи:

Есть кнопка
<Button mnemonicParsing="false" styleClass="blue_button" text="Подключить" onAction="#btnConnect" fx:id="btnCon"></button>
В контроллере есть метод обрабатывающий нажатие
 public void btnConnect(ActionEvent actionEvent) {
    //действие ...........
}
И как можно сменить onAction данной кнопки ? То есть в методе btnConnect делаются действия, и в конце нужно сменить onAction этой кнопки. Что бы стало
<Button mnemonicParsing="false" styleClass="blue_button" text="Подключить" onAction="#btnDisConnect" fx:id="btnCon"></button>
Можно такое реализовать?

Решение задачи: «Сменить слушатель события кнопки при нажатии»

textual
Листинг программы
public class Controller {
    public void a(ActionEvent actionEvent) {
        System.out.println("aaa");
        ((Button)actionEvent.getSource()).setOnAction(this::b);
    }
 
    public void b(ActionEvent actionEvent) {
        System.out.println("bbb");
        ((Button)actionEvent.getSource()).setOnAction(this::a);
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5
Похожие ответы