Как проверить пять TextField, когда значение больше нуля? - PullRequest
0 голосов
/ 14 января 2019

Я говорю по-испански, а не по-английски, я использую переводчик Google.

У меня есть форма .FXML со многими TextField и кнопкой, чтобы щелкнуть и выполнить математическую операцию с каждым из значений, введенных в TextField. Я создал метод, который получает значение текстовых полей и выполняет математическую операцию.

Но если какое-либо из текстовых полей изменило значение, его необходимо пересчитать, нажав на кнопку. Мне нужно, чтобы при нажатии клавиши ввода в любом TextField метод математической операции выполнялся автоматически, но я не хочу использовать метод keyPressed в каждом текстовом поле, это был бы длинный код, вызовите метод keyPressed для каждого TextField .

Я думал о создании слушателя или о типе привязки, о присоединении ко всем текстовым полям или о том, что я обнаружил, когда произошли изменения в текстовых полях или когда введенное значение больше нуля.

textField.textProperty().addListener...

этот метод работает, но у меня много TextField, и мне приходится повторять этот код много раз. И я не хочу этого делать.

txt1..textProperty().addListener...
txt2..textProperty().addListener...
txt3..textProperty().addListener...
txt4..textProperty().addListener...
txt5..textProperty().addListener...
...
...

BooleanBinding bd = Binding.(txt1.textProp..., txt2textProp..., txt3.... ???

это будет возможно?

введите описание изображения здесь

1 Ответ

0 голосов
/ 22 января 2019
EventHandler<KeyEvent> teclaPresionada = (event) -> {
// Colocar todo el codigo aca
};

campo1.addEventHandler(KeyEvent.KEY_PRESSED, teclaPresionada);
campo2.addEventHandler(KeyEvent.KEY_PRESSED, teclaPresionada);
campo3.addEventHandler(KeyEvent.KEY_PRESSED, teclaPresionada);
campo4.addEventHandler(KeyEvent.KEY_PRESSED, teclaPresionada);  
campo5.addEventHandler(KeyEvent.KEY_PRESSED, teclaPresionada);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...