Creating Numeric TextField using KeyListener


1- Write following Code . 

    import java.awt.FlowLayout;
    import java.awt.event.KeyEvent;
    import java.awt.event.KeyListener;
    import javax.swing.JApplet;
    import javax.swing.JTextField;
    import javax.swing.event.CaretEvent;
    import javax.swing.event.CaretListener;
    import javax.swing.JLabel;
    import javax.swing.JFrame;
    import javax.swing.JOptionPane;
   public class JNumericTextField extends JFrame implements KeyListener,CaretListener
       {
             JLabel label=new JLabel("Total Digits :0");
             JTextField field = new JTextField(15);
            public  JNumericTextField()
             {
                    this.getContentPane().setLayout(new FlowLayout());
                    add(field);
                    add(label);
                    field.addKeyListener(this);  
                    field.addCaretListener(this); 
                    setBounds(100,100,300,200);
                    setVisible(true);
            }
     public void caretUpdate(CaretEvent ce)
     {
        int position=ce.getMark();
        label.setText("Total Digits :" +position);  
     }
     public void keyPressed(KeyEvent e) { }
     public void keyReleased(KeyEvent e) { } 
     public void keyTyped(KeyEvent e)
       {
        char c = e.getKeyChar(); // Get the typed character  
         // Don't ignore backspace or delete  
       if (c != KeyEvent.VK_BACK_SPACE && c != KeyEvent.VK_DELETE) 
         {  
            if (!(c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9')) 
           {
            e.consume();  // Ignore this key  
          JOptionPane.showMessageDialog(this,"Only Digits Allowed...","Warning",JOptionPane.WARNING_MESSAGE);
            }
         }
     
     }  
      public static void main(String arg[])
         {
             new JNumericTextField(); 
         }
    }

2- Save this code in a file named "JNumericTextField.java"

3- Compile and Run
            javac JNumericTextField.java
            java  JNumericTextField

4- OUTPUT
         

Write Your Comments.....

Comments

Popular posts from this blog

JDatePicker In Java

Setting Background image of JFrame containg Components

Applet Progarm with Combo box, radio button,Check box