Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 453
  • Last Modified:

In the numeric keypad program, if i press sum number it should be displayed in the label in the top white space. How do i do that? Please some one help me asap

In the numeric keypad program, if i press sum number it should be displayed in the label in the top white space.  How do i do that? Please some one help me asap
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
 
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
 
public class NumericKeyPad extends JPanel {
    //-----------------------------------------------------------------
    //  Creates several bordered panels and displays them.
    //-----------------------------------------------------------------
 
    public static void main(String[] args) {
        JFrame frame = new JFrame("Numeric Keypad");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        JPanel panel = new JPanel();
        panel.setLayout(new GridLayout(4, 3));
        panel.setBorder(BorderFactory.createLineBorder(Color.BLACK, 3));
        panel.setBackground(Color.white);
 
        JButton b1 = new JButton("1");
        JButton b2 = new JButton("2");
        JButton b3 = new JButton("3");
        JButton b4 = new JButton("4");
        JButton b5 = new JButton("5");
        JButton b6 = new JButton("6");
        JButton b7 = new JButton("7");
        JButton b8 = new JButton("8");
        JButton b9 = new JButton("9");
        JButton b11 = new JButton("");
        JButton b0 = new JButton("0");
        JButton b12 = new JButton("");
 
        panel.add(b1);
        panel.add(b2);
        panel.add(b3);
        panel.add(b4);
        panel.add(b5);
        panel.add(b6);
        panel.add(b7);
        panel.add(b8);
        panel.add(b9);
        panel.add(b11);
        panel.add(b0);
        panel.add(b12);
        
        frame.getContentPane().setLayout(new BorderLayout());
        frame.getContentPane().add(panel,BorderLayout.CENTER);
        JButton clearBt = new JButton("Clear");
        JTextField number = new JTextField();
        number.setColumns(15);
        frame.getContentPane().add(number,BorderLayout.NORTH);
        frame.getContentPane().add(clearBt,BorderLayout.EAST);
 
        frame.pack();
        frame.setVisible(true);
 
    }
    
}

Open in new window

0
deeppatel1986
Asked:
deeppatel1986
1 Solution
 
objectsCommented:
you need to use an action listener.

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
 
public class NumericKeyPad extends JPanel {
    //-----------------------------------------------------------------
    //  Creates several bordered panels and displays them.
    //-----------------------------------------------------------------
 
    public static void main(String[] args) {
        JFrame frame = new JFrame("Numeric Keypad");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        JPanel panel = new JPanel();
        panel.setLayout(new GridLayout(4, 3));
        panel.setBorder(BorderFactory.createLineBorder(Color.BLACK, 3));
        panel.setBackground(Color.white);
 
        JButton b1 = new JButton("1");
        JButton b2 = new JButton("2");
        JButton b3 = new JButton("3");
        JButton b4 = new JButton("4");
        JButton b5 = new JButton("5");
        JButton b6 = new JButton("6");
        JButton b7 = new JButton("7");
        JButton b8 = new JButton("8");
        JButton b9 = new JButton("9");
        JButton b11 = new JButton("");
        JButton b0 = new JButton("0");
        JButton b12 = new JButton("");
 
        panel.add(b1);
        panel.add(b2);
        panel.add(b3);
        panel.add(b4);
        panel.add(b5);
        panel.add(b6);
        panel.add(b7);
        panel.add(b8);
        panel.add(b9);
        panel.add(b11);
        panel.add(b0);
        panel.add(b12);
       
        frame.getContentPane().setLayout(new BorderLayout());
        frame.getContentPane().add(panel,BorderLayout.CENTER);
        JButton clearBt = new JButton("Clear");
        final JTextField number = new JTextField();
        number.setColumns(15);
        frame.getContentPane().add(number,BorderLayout.NORTH);
        frame.getContentPane().add(clearBt,BorderLayout.EAST);
 
        // create an action listener that appends the number pressed to the text field
       
        ActionListener actionListener = new ActionListener() {

                  public void actionPerformed(ActionEvent e) {
                        
                        // get the number entered
                        
                        String digit = e.getActionCommand();
                        
                        // append number to the text field
                        
                        number.setText(number.getText()+digit);
                  }
              
        };
       
        // add action listeners to buttons

        b1.addActionListener(actionListener);
        b2.addActionListener(actionListener);
        // same for other number buttons
       
        frame.pack();
        frame.setVisible(true);
 
    }
   
}

http://java.sun.com/docs/books/tutorial/uiswing/events/actionlistener.html
0
 
fsze88Commented:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
 
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
 import java.awt.event.MouseAdapter;
 
import java.awt.event.MouseEvent;
public class NumericKeyPad extends JFrame {
    //-----------------------------------------------------------------
    //  Creates several bordered panels and displays them.
    //-----------------------------------------------------------------
    int preInt=0;
        JButton clearBt = new JButton("Clear");
        JTextField number = new JTextField();
        JButton b1 = new JButton("1");
        JButton b2 = new JButton("2");
        JButton b3 = new JButton("3");
        JButton b4 = new JButton("4");
        JButton b5 = new JButton("5");
        JButton b6 = new JButton("6");
        JButton b7 = new JButton("7");
        JButton b8 = new JButton("8");
        JButton b9 = new JButton("9");
        JButton b11 = new JButton("+");
        JButton b0 = new JButton("0");
        JButton b12 = new JButton("=");
    
    public NumericKeyPad(){
        JFrame frame = new JFrame("Numeric Keypad");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        JPanel panel = new JPanel();
        panel.setLayout(new GridLayout(4, 3));
        panel.setBorder(BorderFactory.createLineBorder(Color.BLACK, 3));
        panel.setBackground(Color.white);
            b1.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "1");
                }
            });
            b2.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "2");
                }
            });
            b3.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "3");
                }
            });
            b4.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "4");
                }
            });
            b5.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "5");
                }
            });
            b6.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "6");
 
                }
            });
            b7.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "7");
                }
            });
            b8.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "8");
                }
            });
            b9.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(number.getText() + "9");
                }
            });
             b11.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    preInt = Integer.parseInt(number.getText());
                    number.setText("");
                }
            });
            b12.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText(String.valueOf((preInt + Integer.parseInt(number.getText()))));
                }
            });
            clearBt.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    number.setText("");
                    preInt= 0;
                }
            });
        panel.add(b1);
        panel.add(b2);
        panel.add(b3);
        panel.add(b4);
        panel.add(b5);
        panel.add(b6);
        panel.add(b7);
        panel.add(b8);
        panel.add(b9);
        panel.add(b11);
        panel.add(b0);
        panel.add(b12);
        
        frame.getContentPane().setLayout(new BorderLayout());
        frame.getContentPane().add(panel,BorderLayout.CENTER);
        number.setColumns(15);
        frame.getContentPane().add(number,BorderLayout.NORTH);
        frame.getContentPane().add(clearBt,BorderLayout.EAST);
 
        frame.pack();
        frame.setVisible(true);    
    
    }
    
    
    public static void main(String[] args) {
        new NumericKeyPad();
 
 
    }
    
}

Open in new window

0
 
mhaq_javaCommented:
Following link can be helpful.
make a generic listener for all butons

http://www.roseindia.net/java/example/java/awt/KeyPress.shtml
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
deeppatel1986Author Commented:
Hey savan i need actionListener for the clear button. Please help ASAP
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
 
public class NumericKeyPad extends JPanel {
    //-----------------------------------------------------------------
    //  Creates several bordered panels and displays them.
    //-----------------------------------------------------------------
int preInt=0;
 
    public static void main(String[] args) {
        JFrame frame = new JFrame("Numeric Keypad");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        JPanel panel = new JPanel();
        panel.setLayout(new GridLayout(4, 3));
        panel.setBorder(BorderFactory.createLineBorder(Color.BLACK, 3));
        panel.setBackground(Color.white);
 
        JButton b1 = new JButton("1");
        JButton b2 = new JButton("2");
        JButton b3 = new JButton("3");
        JButton b4 = new JButton("4");
        JButton b5 = new JButton("5");
        JButton b6 = new JButton("6");
        JButton b7 = new JButton("7");
        JButton b8 = new JButton("8");
        JButton b9 = new JButton("9");
        JButton b11 = new JButton("");
        JButton b0 = new JButton("0");
        JButton b12 = new JButton("");
 
        panel.add(b1);
        panel.add(b2);
        panel.add(b3);
        panel.add(b4);
        panel.add(b5);
        panel.add(b6);
        panel.add(b7);
        panel.add(b8);
        panel.add(b9);
        panel.add(b11);
        panel.add(b0);
        panel.add(b12);
        
        frame.getContentPane().setLayout(new BorderLayout());
        frame.getContentPane().add(panel,BorderLayout.CENTER);
        JButton clearBt = new JButton("Clear");
        final JTextField number = new JTextField();
        
        number.setColumns(15);
        frame.getContentPane().add(number,BorderLayout.NORTH);
        frame.getContentPane().add(clearBt,BorderLayout.EAST);
 
        ActionListener actionListener = new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                // get the number entered
                String digit = e.getActionCommand();
                // append number to the text field
                number.setText(number.getText()+digit);
            }
        };
        ActionListener actionListener1 = new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                    //String clear = e.getActionCommand();
                    number.setText("");
            }
        };
        b1.addActionListener(actionListener);
        b2.addActionListener(actionListener);
        b3.addActionListener(actionListener);
        b4.addActionListener(actionListener);
        b5.addActionListener(actionListener);
        b6.addActionListener(actionListener);
        b7.addActionListener(actionListener);
        b8.addActionListener(actionListener);
        b9.addActionListener(actionListener);
        b11.addActionListener(actionListener);
        b0.addActionListener(actionListener);
        b12.addActionListener(actionListener);
        clearBt.addActionListener(actionListener);
 
        frame.pack();
        frame.setVisible(true);
    }
}

Open in new window

0
 
objectsCommented:
>         clearBt.addActionListener(actionListener);

change to:

        clearBt.addActionListener(actionListener1);

0
 
deeppatel1986Author Commented:
Thanks a lot
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now