0
我有TextField包含一個文本,如:「你好!」而這個文本如果改爲另一個文本應該做一些主要的問題是如何檢查這個TextField是否包含新值(新文本)而不是寫入第一個文本應該做些什麼。任何機構可以告訴我怎麼做,並在此先感謝:)如何確定TextField中的文本是否已更改或不包含JavaFX?
我有TextField包含一個文本,如:「你好!」而這個文本如果改爲另一個文本應該做一些主要的問題是如何檢查這個TextField是否包含新值(新文本)而不是寫入第一個文本應該做些什麼。任何機構可以告訴我怎麼做,並在此先感謝:)如何確定TextField中的文本是否已更改或不包含JavaFX?
你可以一個ChangeListener添加到TextField這樣的textProperty:
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
FlowPane root = new FlowPane();
TextField textField = new TextField();
textField.textProperty().addListener(new ChangeListener<String>(){
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
System.out.println(observable + ", " + oldValue + ", " + newValue);
}
});
root.getChildren().add(textField);
Scene scene = new Scene(root,400,400);
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}