Home Answers Viewqa Java-Beginners why my keyevent not function ? - java swing -

 
 


sfarzana
why my keyevent not function ? - java swing -
0 Answer(s)      3 months and 7 days ago
Posted in : Java Beginners

import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;

public class Calculator extends JFrame{

// Declare GUI components
   private JTextField jtfFirst;
   private JTextField jtfSecond;
   private JTextField jtfResult;
   private JLabel jlblFirst;
   private JLabel jlblSecond;
   private JLabel jlblResult;
   private JPanel entryPanel;
   private JPanel buttonPanel;
   private JButton jbtAdd;
   private JButton jbtSubtract;
   private JButton jbtMultiply;
   private JButton jbtDivide;

// main method to instantiate and customize frame
   public static void main(String[] args)
   {
       Calculator frame = new Calculator();
       frame.setTitle( "Four Function Calculator");
       frame.setSize( 500, 120 );
       frame.setLocation(400, 400);
       frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
       frame.setVisible(true);
   }
// GUI constructor
   public Calculator()
   {
       // Instantiate GUI components for top of frame
       jlblFirst = new JLabel( "First Number: ", JLabel.CENTER );
       jlblSecond = new JLabel( "Second Number: ", JLabel.CENTER );
       jlblResult = new JLabel( "Result: ", JLabel.CENTER );
       jtfFirst = new JTextField(5);
       jtfSecond = new JTextField(5);
       jtfResult = new JTextField(10);
       entryPanel = new JPanel();

       // make result text field uneditable
       jtfResult.setEditable( false );

       // Set layout manager of panel
       entryPanel.setLayout( new FlowLayout());

       // add GUI components to panel
       entryPanel.add( jlblFirst );
       entryPanel.add( jtfFirst );
       entryPanel.add( jlblSecond );
       entryPanel.add( jtfSecond );
       entryPanel.add( jlblResult );
       entryPanel.add( jtfResult );

       // add entryPanel to frame
       add(entryPanel);
       setLayout(new FlowLayout());

       // Instantiate GUI components for bottom of frame
       jbtAdd = new JButton( "Add" );
       jbtAdd.setVerticalTextPosition(AbstractButton.CENTER);
       jbtAdd.setHorizontalTextPosition(AbstractButton.LEADING);
       jbtAdd.setMnemonic(KeyEvent.VK_A);
       jbtSubtract = new JButton( "Subtract" );
       jbtSubtract.setVerticalTextPosition(AbstractButton.CENTER);
       jbtSubtract.setHorizontalTextPosition(AbstractButton.LEADING);
       jbtSubtract.setMnemonic(KeyEvent.VK_S);
       jbtMultiply = new JButton( "Multiply" );
       jbtMultiply.setVerticalTextPosition(AbstractButton.CENTER);
       jbtMultiply.setHorizontalTextPosition(AbstractButton.LEADING);
       jbtMultiply.setMnemonic(KeyEvent.VK_M);
       jbtDivide = new JButton( "Divide" );
       jbtDivide.setVerticalTextPosition(AbstractButton.CENTER);
       jbtDivide.setHorizontalTextPosition(AbstractButton.LEADING);
       jbtDivide.setMnemonic(KeyEvent.VK_D);
       buttonPanel = new JPanel();

       // add buttons to panel
       buttonPanel.add( jbtAdd );
       buttonPanel.add( jbtSubtract );
       buttonPanel.add( jbtMultiply );
       buttonPanel.add( jbtDivide );

       // add buttonPanel to frame
       add( buttonPanel, BorderLayout.SOUTH);

       //Event Handler
       jbtAdd.addMouseListener(new List_ButtonADD());
       jbtSubtract.addMouseListener(new List_ButtonSUB());
       jbtDivide.addMouseListener(new List_ButtonDIV());
       jbtMultiply.addMouseListener(new List_ButtonMUL());
   }



   private class List_ButtonADD implements MouseListener
   {
       public void mouseClicked(MouseEvent event)
       {
           double x=Double.parseDouble(jtfFirst.getText());
           double y=Double.parseDouble(jtfSecond.getText());
           jtfResult.setText(String.valueOf(x+y));
       }
       public void mousePressed(MouseEvent event)
       {
       }
       public void mouseReleased(MouseEvent event)
       {
       }
       public void mouseEntered(MouseEvent event)
       {
       }
       public void mouseExited(MouseEvent event)
       {
       }
   }
   private class List_ButtonDIV implements MouseListener
   {
       int cnt=0;
       public void mouseClicked(MouseEvent event)
       {
           double x=Double.parseDouble(jtfFirst.getText());
           double y=Double.parseDouble(jtfSecond.getText());
           jtfResult.setText(String.valueOf(x/y));;
       }
       public void mousePressed(MouseEvent event)
       {
       }
       public void mouseReleased(MouseEvent event)
       {
       }
       public void mouseEntered(MouseEvent event)
       {
       }
       public void mouseExited(MouseEvent event)
       {
       }
   }
   private class List_ButtonSUB implements MouseListener
   {
       int cnt=0;
       public void mouseClicked(MouseEvent event)
       {
           double x=Double.parseDouble(jtfFirst.getText());
           double y=Double.parseDouble(jtfSecond.getText());
           jtfResult.setText(String.valueOf(x-y));
       }
       public void mousePressed(MouseEvent event)
       {
       }
       public void mouseReleased(MouseEvent event)
       {
       }
       public void mouseEntered(MouseEvent event)
       {
       }
       public void mouseExited(MouseEvent event)
       {
       }
   }
   private class List_ButtonMUL implements MouseListener
   {
       int cnt=0;
       public void mouseClicked(MouseEvent event)
       {
           double x=Double.parseDouble(jtfFirst.getText());
           double y=Double.parseDouble(jtfSecond.getText());
           jtfResult.setText(String.valueOf(x*y));
       }
       public void mousePressed(MouseEvent event)
       {
       }
       public void mouseReleased(MouseEvent event)
       {
       }
       public void mouseEntered(MouseEvent event)
       {
       }
       public void mouseExited(MouseEvent event)
       {
       }
   }
}
View Answers









Related Pages:

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.