5

我是 Java 和 NetBeans 的初学者。我正在尝试制作一个简单的程序,您可以在其中引入 2 个数字并将它们的总和除以 2。但是,我正在使用JFormattedTExtFields 并且我不知道如何自定义其中允许的输入。基本上我试图找出如何:

  • 只允许输入数字JFormmatedTextField
  • 只允许一定数量的数字;
4

1 回答 1

9

您可以使用 NumberFormat 并使用setMaximumIntegerDigits指定最大整数位数。

这是一篇不错的文章

基本上你可以这样做:

NumberFormat f = NumberFormat.getNumberInstance(); 
f.setMaximumIntegerDigits(maxDigitsAmount);
JFormattedTextField field = new JFormattedTextField(f);

Format应该保证插入的 String 满足格式。无论如何,即使提供了一个数字,文本字段也会将其存储为字符串。因此,如果您需要原始整数,则需要像建议的@noise 那样重建它:

Integer i = Integer.toString(field.getText());
于 2011-12-26T17:27:51.660 回答