密钥监听器java - 数量限制

时间:2015-12-02 19:31:32

标签: java swing

我在JFrame中有一个应用程序。以下是代码的一部分:

  button.addActionListener(new ActionListener()
  {
          public void actionPerformed(ActionEvent e)
          {
                 String input = text.getText();
                 int number = Integer.parseInt(text.getText());
                 if(number>0)
                 {
                     for(int i=0; i<liczba; i++)
                     {
                         new NewWindow();
                     }
                 }
          }
  });

此操作会在应用中创建新窗口,其中窗口数量取决于我们输入的数量。我需要确保它是一个数字(不是字母或其他东西)。我也知道必须使用密钥监听器,输入的符号必须在代表数字的某些ASCII值之间。但我不知道如何做到这一点。任何解决方案?

1 个答案:

答案 0 :(得分:3)

  

我也知道必须使用密钥监听器

不需要使用KeyListener。这可能是最古老的解决方案,并在AWT中使用。 Swing有更新更好的API,你应该使用它。

您可以使用JSpinnerJFormattedTextFieldDocumentFilter

阅读Swing Tutorial。你应该查看以下部分:

  1. How to Use a Spinner
  2. How to use Formatted Text Fields
  3. How to Write a DocumentFilter
  4. 上述任何一种方法都比使用KeyListener更好。