如何设置jFormattedTextField所以它只允许2个数字?

时间:2011-12-26 17:23:32

标签: java swing jformattedtextfield

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

  • 仅允许在JFormmatedTextField;
  • 中输入数字
  • 只允许一定数量的数字;

1 个答案:

答案 0 :(得分:9)

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

这是一个不错的article

基本上你可以这样做:

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

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

Integer i = Integer.toString(field.getText());