JTextField:如何在JTextField中验证数字输入

时间:2015-06-23 09:32:40

标签: java swing jtextarea

如何验证文本字段在Swing中仅输入10位数的手机号码?

我有三个文字字段。

  1. 名称
  2. 联系方式
  3. 否。对于电子邮件
  4. 我想点击提交按钮然后查看姓名,联系方式和电子邮件是对还是错。我也想设置字符限制

    import java.awt.GridBagConstraints;
    import java.awt.GridBagLayout;
    import java.awt.Insets;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JTextField;
    import javax.swing.JButton;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    class UpDateProfile extends JFrame implements ActionListener
    {
        JLabel name_lbl,email_lbl,contact_lbl;
        JTextField name_text,email_text,contact_text;
        JButton submit_btn;
        public UpDateProfile()
        {
                super("Velidation demo");
    
                setSize(650,450);
                setLocation((int)Toolkit.getDefaultToolkit().getScreenSize().getWidth()/2-325,(int)Toolkit.getDefaultToolkit().getScreenSize().getHeight()/2-225);
                setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                setLayout(new GridBagLayout());
                setResizable(false);
    
                GridBagConstraints gbc1 = new GridBagConstraints();
                gbc1.insets = new Insets(5,3,5,3);
    
            name_lbl = new JLabel("Name :");
            gbc1.gridx = 0;
            gbc1.gridy = 0;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 1;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(name_lbl,gbc1);
    
            name_text = new JTextField(30);
            gbc1.gridx = 1;
            gbc1.gridy = 0;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 3;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(name_text,gbc1);
    
            email_lbl = new JLabel("E-mail :");
            gbc1.gridx = 0;
            gbc1.gridy = 1;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 1;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(email_lbl,gbc1);
    
            alt_email_text = new JTextField(30);
            gbc1.gridx = 1;
            gbc1.gridy = 1;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 3;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(alt_email_text,gbc1);
    
            contact_lbl = new JLabel("Contact No. :");
            gbc1.gridx = 0;
            gbc1.gridy = 2;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 1;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(contact_lbl,gbc1);
    
            contact_text = new JTextField(10);
            gbc1.gridx = 1;
            gbc1.gridy = 2;
            gbc1.ipadx = 0;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 1;
            gbc1.fill = GridBagConstraints.HORIZONTAL;
            gbc1.anchor = GridBagConstraints.WEST;
            add(contact_text,gbc1);
    
            submit_btn = new JButton("Submit");
            submit_btn.addActionListener(this);
            gbc1.gridx = 2;
            gbc1.gridy = 7;
            gbc1.ipadx = 10;
            gbc1.ipady = 0;
            gbc1.gridheight = 1;
            gbc1.gridwidth = 2;
            gbc1.anchor = GridBagConstraints.CENTER;
            add(submit_btn,gbc1);
        }
        public void actionPerformed(ActionEvent ae)
        {
            if(ae.getSource()==submit_btn)
            {
    
            }
        }
    }
    

1 个答案:

答案 0 :(得分:1)

public void actionPerformed(ActionEvent ae)
{
    if(ae.getSource()==submit_btn)
    {
        String text = contact_text.getText();
        if(text.matches("\\d{10}")){
             // The text entered is a 10-digit number
        }else{
             // The text is not valid
        }
    }
}