У меня есть 3 поля:
@FXML
private TextField name;
@FXML
private TextField lastName;
@FXML
private TextField phoneNumber;
Я создал для них EventHandler
:
EventHandler<InputEvent> fieldChangeListener = new EventHandler<InputEvent>() {
public void handle(InputEvent event) {
String input = ((TextField) event.getSource()).getText();
System.out.println("Changed: "+event.getSource());
event.consume();
}
};
И назначено им:
name.addEventHandler(InputMethodEvent.INPUT_METHOD_TEXT_CHANGED, fieldChangeListener);
lastName.addEventHandler(InputMethodEvent.INPUT_METHOD_TEXT_CHANGED, fieldChangeListener);
phoneNumber.addEventHandler(InputMethodEvent.INPUT_METHOD_TEXT_CHANGED, fieldChangeListener);
Как я могу определить, какое из трех полей вызвало событие? Я хочу вызывать разные функции в зависимости от того, какая из них была изменена, например: -
if(name){
function changedName();
}
else if(lastName){
function changedLastName();
}
else if(phoneNumber){
function changedPhoneNumber();
}
onInputMethodTextChanged
в fxml для регистрации обработчика? - person fabian   schedule 24.07.2017