2017-04-22 84 views
-2

我需要验证Java中的文本字段,以便用户只能用数字填充此字段(无字母,无空字段)。验证Java中的文本字段

+4

这很好。现在你的问题是什么? –

回答

0

您可以使用InputVerifier这个

public class Main extends JFrame { 
    private JTextField textField1 = new JTextField(); 
    private JTextField textField2 = new JTextField(); 

    public Main() { 
     setSize(200,200); 
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     add(textField1, BorderLayout.NORTH); 
     add(textField2, BorderLayout.SOUTH); 
     textField1.setInputVerifier(fieldVerifier); 
    } 

    InputVerifier fieldVerifier = new InputVerifier() { 
     @Override 
     public boolean verify(JComponent input) { 
      JTextField temp = (JTextField)input; 
      try { 
       int number = Integer.parseInt(temp.getText()); 
       return true; 
      } 
      catch(NumberFormatException e) { 
       JOptionPane.showMessageDialog(null, "You MUST input only numbers!"); 
      } 
      return false; 
     } 
    }; 

    public static void main(String[] args) { 
     EventQueue.invokeLater(new Runnable() { 
      public void run() { 
       new Main().setVisible(true); 
      } 
     }); 
    } 
}