2017-04-22 109 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); 
      } 
     }); 
    } 
}