我正在使用JTextFields的二维数组来获取x y个点,并在JPanel上绘制它们。
将输入限制为数字或阻止字母炸毁我的程序的最佳方法是什么?
这是一段代码,在输入字母时不喜欢。
Float smallX = Float.parseFloat(xyInput[0][0].getText());
for (Integer i = 0; i < xyInput.length; i++) {
String number = xyInput[i][0].getText();
Float testX = Float.parseFloat(number);
if (smallX > testX) {
smallX = testX;
System.out.println("smallX = " + smallX);
}
}
感谢您的帮助!
答案 0 :(得分:1)
JFormattedTextField
- 后验证;见How to Use Formatted Text Fields JSpinner
- 后验证;见How to Use Spinners InputVerifer
- 后验证;见Validating Input DocumentFilter
- 实时验证;请参阅Implementing a Document Filter和DocumentFilter Examples