我是Java和NetBeans的初学者。我试图做一个简单的程序,你介绍2个数字,他们的总和除以2。但是,我使用的是JFormattedTExtField
,我不知道如何自定义它们中允许的输入。基本上我试图找出如何:如何设置jFormattedTextField,使它只允许2个数字?
- 只允许输入数字在
JFormmatedTextField
; - 只允许一定数量的数字;
我是Java和NetBeans的初学者。我试图做一个简单的程序,你介绍2个数字,他们的总和除以2。但是,我使用的是JFormattedTExtField
,我不知道如何自定义它们中允许的输入。基本上我试图找出如何:如何设置jFormattedTextField,使它只允许2个数字?
JFormmatedTextField
;您可以使用NumberFormat并指定setMaximumIntegerDigits的最大整数位数。
这是一个不错的article。
基本上,你可以这样做:
NumberFormat f = NumberFormat.getNumberInstance();
f.setMaximumIntegerDigits(maxDigitsAmount);
JFormattedTextField field = new JFormattedTextField(f);
的Format应保证所插入的字符串满足格式。无论如何,即使提供了一个数字,文本字段也会将其存储为字符串。所以,如果你需要你原来的整数您需要重建它像建议@noise:
Integer i = Integer.toString(field.getText());
谢谢!哦,另一件事。如果有人可以告诉我如何将文本字段的文本设置为int?例如,我有2个整数(在2个文本框中输入的值)和一个rezult int,它等于2个整数的和。如果我调用jTextField1.setText(rezult),它会要求字符串而不是int。任何帮助? – Bugster 2011-12-26 17:40:08
使用'Integer.toString(int)' – 2011-12-26 17:43:20
非常感谢。我几乎修复它,除非我调用JFormattedTextField field = new JFormattedTextField(f);它给我一个错误“无法找到符号JFormattedTextField”。任何想法? – Bugster 2011-12-26 17:49:21
可能是你的JSpinner有看太, – mKorbel 2011-12-26 19:05:39