JavaFX TextField文本域值改变监听事件

时间:2021-07-23 14:11:51

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());
            }
        });

没了