![](/img/trans.png)
[英]Pulling null data from text fields. Table is populated, but can't retrieve objects. Java / JavaFX
[英]retrieve data from multi text field in javafx
我正在開發一個應用程序,在該應用程序中,用戶應確定在用戶確定文本字段數之后,應從在javaFX控制器中動態創建的文本字段中檢索數據。 因為在第一個視圖中我只有一個文本字段,所以我確實很容易地檢索了它,沒有問題,但是當從控制器動態創建文本字段時,我只是不知道如何進行操作。
我試圖使用textfield.getText(); 但它不起作用。
這是我的代碼:
public void handleButtonActionNext(ActionEvent event) throws IOException{
String t = textField.getText();
IntegerStringConverter a = new IntegerStringConverter();
this.i = a.fromString(t);
Node node = (Node) event.getSource();
Stage stage = (Stage) node.getScene().getWindow();
Scene scene = stage.getScene();
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("ProcessusTimeExec.fxml"));
Parent root = (Parent) fxmlLoader.load();
scene.setRoot(root);
gridPane = (GridPane) FXMLLoader.load(getClass().getResource("ProcessusTimeExec.fxml"));
Scene secondScene = new Scene(gridPane);
gridPane.setPadding(new Insets(10, 10, 10, 10));
this.listTextField = new ArrayList<>();
for(int n=1; n<=i;n++){
this.label = new Label("execution Time "+n);
GridPane.setConstraints(label, 0, n+2);
GridPane.setConstraints(textField, 1, n+2);
gridPane.getChildren().add(textField);
gridPane.getChildren().add(label);
}
stage.setScene(secondScene);
}
在此Handlevent中,在同一控制器中,我試圖檢索數據以便將其發送到項目的邏輯部分。
public void handleButtonActionAlgo(ActionEvent event) throws IOException{
Node node = (Node) event.getSource();
Stage stage = (Stage) node.getScene().getWindow();
Scene scene = stage.getScene();
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("Algo.fxml"));
Parent root = (Parent) fxmlLoader.load();
scene.setRoot(root);
// retrieve the data from the textFields
}
執行這些操作的按鈕在FXML文件中。
就像是 :
TextField textField[] = new TextField[...];
for(int n=1; n<=i;n++) {
textField[n] = new TextField("input "+n);
gridPane.getChildren().add(textField[n]);
}
您可以使用.getText()
打印它們進行測試
for(int n=1; n<=i;n++) {System.out.println(textField[n].getText());}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.