Вам понадобится List
для отслеживания каждого TextField
.Ваш вопрос не содержит никакого кода, поэтому сложно определить самый простой способ сделать это в вашей ситуации, но есть несколько вариантов.
- Тот же контейнер макета: Есливсе элементы управления
TextField
содержатся в одном контейнере макета, например, VBox
или FlowPane
, вы можете использовать список дочерних элементов для этого контейнера: vbox.getChildren()
- Создайте свойown
List
: Если у вас есть fx:id
для всех ваших TextFields
, то добавьте их в List
: list.add (textField)
Теперь, когда у вас естьсписок, просто переберите их, используя итератор или простой цикл for
:
Дочерний контейнер:
for (Node node : root.getChildren()) {
// If you're certain all the children ARE TextFields, cast the node now
((TextField) node).setText("Yay for text!");
}
Ваш собственный список:
// Create a List to track all the TextFields
List<TextField> textFieldList = new ArrayList<>();
// Add some TextFields to the list
for (int i = 0; i < 20; i++) {
textFieldList.add(new TextField());
}
// Now iterate over the list of TextFields and set their text
for (TextField textField :
textFieldList) {
textField.setText("Yay for text again!");
}