如何解决JTextArea:仅限数字
我正在尝试制作一个计算器程序,我只想允许输入数字,但我不知道该怎么做,请告诉我怎么做。我在其他地方没有找到任何东西。这是我的源代码:
import javax.swing.*;
import java.awt.*;
public class Sect1 extends JTextArea{
public static final Dimension ss = Toolkit.getDefaultToolkit().getScreenSize();
public Sect1(){
this.setBounds(ss.width / 4,ss.height / 5,100,100);
this.setLineWrap(true);
this.setWrapStyleWord(true);
}
}
解决方法
如上所述,请查看 JFormattedTextField 或 DocumentFilter 类。这些将允许您(更简单地)控制 jTextField 的输入。
另一个需要考虑的选择是创建一个如下所示的方法:
public static boolean isNumber(String input){
try{
Integer.parseInt(input);
}
catch(Exception e){
return false;
}
return true;
}
这段代码试图做的就是将输入解析为一个整数,并在它能够做到的情况下返回(因此如果数据是一个整数)。 使用事件侦听器将 jTextField.getText() 作为输入调用此方法将让您在键入时知道字段中的数据是否为整数。 See this for more on the last part。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。