Grundsätzlich habe ich ein Pop-up-Display, das ein Textfeld hat, ich möchte den Benutzer einen Namen eingeben (dann bekomme ich schließlich den Namen und später verwenden, aber das ist egal). Leider wird der Text im Textfeld nicht aktualisiert (grafisch kann das Programm immer noch das erhalten, was über tf.getText() eingegeben wurde, aber ich kann die Textaktualisierung nicht sehen).JavaFX TextField wird nicht aktualisiert Text
Stage window = new Stage();
window.initModality(Modality.APPLICATION_MODAL);
window.setTitle("Naming");
window.setMinWidth(300);
window.setMinHeight(200);
Label label = new Label();
label.setText("Please type a name");
Button submitButton = new Button("Submit");
TextField tf = new TextField();
tf.setText("Please enter a name");
tf.setMaxWidth(200);
submitButton.setOnAction(e ->{
System.out.println(tf.getText());
window.close();
});
VBox layout = new VBox(10);
layout.getChildren().addAll(label, submitButton, tf);
Scene scene = new Scene(layout);
window.setScene(scene);
window.showAndWait();
Das Problem kann durch changind window.showAndWait();
nur window.show()
, festgelegt werden, aber ich frage mich, ob es auch eine andere Art und Weise gelöst werden kann.
Tut dies Hilfe? (http://stackoverflow.com/questions/26022699/javafx-text-fields-are-not-updating-on-gui) –
Der von Ihnen bereitgestellte Code funktioniert gut, obwohl Informationen benötigt werden. Welche Java-Version verwenden Sie? über Code in JavaFX Thread? Führen Sie Lock- oder Thread.sleep() -Methoden aus, durch die die App verzögert wird? – GOXR3PLUS