gpt4 book ai didi

JAVAFx TextField 验证十进制值

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:22:26 25 4
gpt4 key购买 nike

我正在尝试限制十进制数字的文本字段,我已经找到了整数验证的解决方案 here ,但问题是我无法将以下代码转换为十进制数,例如 324.23、4.3、4、2、10.43。 (只允许一位小数点)。

 vendorList_textField_remaining.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (!newValue.matches("\\d*")) {
vendorList_textField_remaining.setText(newValue.replaceAll("[^\\d||.]", ""));
}
}
});

我也在寻找替代解决方案。谢谢。

最佳答案

我遇到过同样的情况。我想我已经找到了解决这个问题的方法。正则表达式必须由一个新的替换,并由 setText 进行少许更改。现在它运作良好。代码如下:

vendorList_textField_remaining.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (!newValue.matches("\\d*(\\.\\d*)?")) {
vendorList_textField_remaining.setText(oldValue);
}
}
});

关于JAVAFx TextField 验证十进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40485521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com