У меня есть одна кнопка в одном FXML и два текстовых поля в другом FXML. Эти два FXML независимы, я имею в виду, что они не вложены. Я хочу напечатать текст (который находится в двух текстовых полях) в консоли/выводе всякий раз, когда нажимается кнопка. Ниже приведены fxmls и их контроллеры:Как получить данные в одном контроллере Java FXML от другого контроллера FXML (эти контроллеры не являются вложенными контроллерами)?
Button.fxml
<AnchorPane id="AnchorPane" prefHeight="200.0" prefWidth="320.0" xmlns:fx="http://javafx.com/fxml" fx:controller="textboxandbuttonbinding.ButtonController">
<children>
<Button fx:id="button" layoutX="126.0" layoutY="90.0" onAction="#handleButtonAction" text="Button" />
</children>
</AnchorPane>
ButtonController.java
public class ButtonController implements Initializable {
@FXML
private void handleButtonAction(ActionEvent event) {
}
@Override
public void initialize(URL url, ResourceBundle rb) {
}
}
Text.fxml
<AnchorPane id="AnchorPane" prefHeight="400.0" prefWidth="600.0" xmlns:fx="http://javafx.com/fxml" fx:controller="textboxandbuttonbinding.Sample1111Controller">
<children>
<TextField fx:id="textField1" layoutX="186.0" layoutY="133.0" prefWidth="200.0" promptText="text 1" />
<TextField fx:id="textField2" layoutX="186.0" layoutY="200.0" prefWidth="200.0" promptText="text2" />
</children>
</AnchorPane>
TextController.java
public class TextController implements Initializable {
@FXML
private TextField textField1;
@FXML
private TextField textField2;
@Override
public void initialize(URL url, ResourceBundle rb) {
}
}
Как я могу достичь этой функциональности? Я принял во внимание, что эти два FXML загружаются одновременно с двумя разными окнами.
вы можете использовать это решение: HTTP: // StackOverflow. com/questions/14187963/pass-parameters-javafx-fxml или это решение http://stackoverflow.com/questions/14511016/how-can-i-use-a-variable-from-another-controller-in-javafx или даже это решение http: // stackoverflow.com/questions/9717852/how-to-pass-object-created-in-fxml-controller1-to-controller2-of-inner-fxml-cont/10718683#10718683 –
Привет, ваши решения в основном устанавливают данные для другой контроллер. Я хочу получать данные от другого FXML, особенно из TextField. Я думал, что решение, данное SnakeDoc, должно работать, но я не уверен, почему он не работает. Пожалуйста, помогите, я полностью застрял здесь. – BungBung