java - 如何设置 jFormattedTextField 使其只允许 2 个数字?

标签 java swing jformattedtextfield

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

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

最佳答案

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

这是一个不错的 article .

基本上你可以这样做:

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

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

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

关于java - 如何设置 jFormattedTextField 使其只允许 2 个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8637792/

相关文章:

java - 如何使用 Degraph 仅绘制模型图

java - 将 jTextArea 中的文本(即另存为)保存到新的 .txt 文件中

java - 验证文本 Pane 的范围

java - JFormattedTextField 和短时间格式

java - 读取 UTF-8 格式的 CSV 文件

java - 录音时可以合并音频(音频位置 "res - raw - audio.mp3")吗?

java - 映射异常 : Unknown entity when using Entity subclass as Command

java - AbstractTableModel 中的 JTable 未显示

java - 如何在 MyEclipse 中定义 Label 类?

java - 在将格式应用到 JFormattedTextField 后是否有强制验证的方法?