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