当前位置: 首页 > 知识库问答 >
问题:

如何在Swing中输入整数?

荀金鹏
2023-03-14

我有密码

    NumberFormat format = NumberFormat.getIntegerInstance();
    format.setGroupingUsed(false);

    JFormattedTextField jtf = new JFormattedTextField(format);

    jtf.setValue(new Integer(0));
    jtf.setColumns(10);

但是当我在文本字段中输入字符时,它们会保持打印状态,直到我切换到另一个文本字段。我需要完全禁止字符输入,我的意思是当字符输入时,我需要删除字符,或者如果可能的话,以某种方式使字符甚至不出现以供听众处理,当然也不出现在文本字段中。我的意思是只有数字字符必须出现。

共有3个答案

应煌
2023-03-14

我将使用配置有JSpinnerNumberModel的JSpinnerNumberModel。这是专门为整数输入设计的,并且还提供了向上/向下箭头按钮的好处,可以用鼠标进行更改。

朱高超
2023-03-14

我已经有一段时间没有在Swing上工作了,但是我认为你可以创建自己的文档并将其设置在JTextField上。

然后在document对象中,您可以控制在用户输入字符时接受和拒绝哪些字符。

下面是在文档上设置筛选器的示例:

将JTextField输入限制为整数

郝永思
2023-03-14

对于这个问题,我找到了一个可能重复的解决方案,将JTextField输入限制为整数

    NumberFormat format = NumberFormat.getIntegerInstance();
    format.setGroupingUsed(false);

    NumberFormatter numberFormatter = new NumberFormatter(format);
    numberFormatter.setValueClass(Long.class); 
    numberFormatter.setAllowsInvalid(false); //this is the key

    JFormattedTextField jFormattedTextField = new JFormattedTextField(numberFormatter);
 类似资料:
  • 我已经创建了一个控制台应用程序,现在开始将其转换为摇摆应用程序。我有一个问题,我搜索了很多次,但我没有找到任何答案。 我的应用程序有一个类来验证用户的输入,如果输入错误,它会向控制台发出错误消息。所以我尝试做的是,我有一个Jtextfield并验证这个输入,如果输入错误,它应该给我错误消息。 这是我的Input类,用户可以在其中编写 这是我的输出类方法 我只是想知道我可以使用输入类的验证,还是应该

  • 我试图获取代码,以防止用户输入中包含数字。 基本上,我希望代码如下所示: 请求输入 关键是(为什么这不是一个重复的问题):我不能使用循环或其他我们还没有学会的语句。到目前为止,我们所学的唯一真正的语句是if/else/else if语句。这意味着我不能像一些答案所建议的那样使用for循环。虽然它们是很好的答案,而且很有效,但我会因为使用它们而失分。 我已经有了这个,但我不知道如何测试输入是否只包含

  • 我正在尝试创建一个输入来验证输入是整数,并且它是正的。现在我有这个。我应该如何检查整数是否为正 编辑:我还需要它一直询问,直到你输入一个正整数

  • 我不知道用户会输入多少个数字,并且我需要程序在到达行尾时停止在数组中插入数字,因为在新行中用户会输入一个与此无关的数字。 例如: 用户可以输入: 1 5 7 8 9 5 4 或: 5 4 8 9 4 2 1 3 2 4 7 我需要的数组是,示例1:[1,5,7,8,9,5]

  • 问题内容: 我有一个从JPanel继承并带有图像的类,我想设置一个小动画来显示面板/图像,然后在事件触发时淡出它。 我大概设置了一个线程并启动了动画,但是我该如何实际执行淡入淡出呢? 问题答案: 你可以自己进行线程化,但是使用Trident库进行处理可能会更容易。如果在你的类(例如)上创建了一个setter ,则可以要求trident在特定时间段内将“不透明度”字段从1.0插入到0.0(这里有一些

  • 问题内容: 我发现了一些奇怪的行为:默认情况下,角度修剪模型值。快速谷歌搜索并不能帮助我解决这个问题。我发现了指令建议,依此类推。但是没有任何效果。 我在下面提供了一个代表此问题的小片段。 您也可以在这里尝试此代码段。 我添加了一个与model同步的textarea 。但是,当添加新的尾随空格或将行换成新空格时,它对观看没有反应。 我该怎么做才能关闭此行为?谢谢。 问题答案: 该指令是1.1.1中