gpt4 book ai didi

java - 整数的 JTextfield 监听器

转载 作者:行者123 更新时间:2023-11-29 07:58:54 25 4
gpt4 key购买 nike

我很难找到一个解决方案来为 JTextField 编写监听器,特别是只允许整数值(不允许 String)。我试过了 this recommended link在 Document Listener 上,但我不知道调用什么方法等。

我以前从未使用过这种类型的监听器,所以谁能解释我如何在 JTextField 上编写监听器以仅允许可以接受的整数值?

基本上,在我点击一个 JButton 之后,在数据被提取到一个变量之前,Listener 将不允许处理它,直到输入一个整数。

非常感谢。

最佳答案

您不需要监听器,您想要从 JTextField 获取文本并测试它是否为 int

if (!input.getText().trim().equals(""))
{
try
{
Integer.parseInt(myString);
System.out.println("An integer"):
}
catch (NumberFormatException)
{
// Not an integer, print to console:
System.out.println("This is not an integer, please only input an integer.");
// If you want a pop-up instead:
JOptionPane.showMessageDialog(frame, "Invalid input. Enter an integer.", "Error", JOptionPane.ERROR_MESSAGE);
}
}

您也可以使用正则表达式(有点矫枉过正,但它有效):

boolean isInteger = Pattern.matches("^\d*$", myString);

关于java - 整数的 JTextfield 监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15752876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com