Preface
JavaFX的Text Field控件中,有時需要“時時刻刻”監聽文本中的值的變化。在JTextField中,也有類似的(JTextField監聽事件),但是不適用於JavaFX。
JTextField寫法
textField.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if (Integer.parseInt(textField.getText())<=0){
JOptionPane.showMessageDialog(null,
"Error: Please enter number bigger than 0", "Error Message",
JOptionPane.ERROR_MESSAGE);
}
}
}
JavaFX中TextField事件監聽寫法
textField.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
statusBarLabel.setText("狀態:當前字符數爲:" + textField.getText().length());
}
});