This tutorial will teach you how to make a simple calculator using Java Eclipse.
First Step : you must extends the JFrame and implements ActionListener .I have attached the video tutorial below it will help you to do this step by step.
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.Color;
public class Cal extends JFrame implements ActionListener {
private JFrame frame;
private JTextField txtnum1;
private JTextField txtnum2;
JLabel lblresult;
JButton btnAdd;
JButton btnMin;
JButton btnSub;
JButton btnDiv;
private int operation;
private JLabel lblResult;
/**
* Launch the application.
*/ public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Cal window = new Cal();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/ public Cal() {
initialize();
}
/**
* Initialize the contents of the frame.
*/ private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 509, 370);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JLabel lblNewLabel = new JLabel("Calculator");
lblNewLabel.setFont(new Font("Trajan Pro", Font.BOLD, 35));
lblNewLabel.setBounds(119, 11, 283, 38);
frame.getContentPane().add(lblNewLabel);
JPanel panel = new JPanel();
panel.setBounds(43, 73, 402, 184);
frame.getContentPane().add(panel);
panel.setLayout(null);
txtnum1 = new JTextField();
txtnum1.setFont(new Font("Tahoma", Font.BOLD, 13));
txtnum1.setBounds(207, 38, 153, 20);
panel.add(txtnum1);
txtnum1.setColumns(10);
txtnum2 = new JTextField();
txtnum2.setFont(new Font("Tahoma", Font.BOLD, 13));
txtnum2.setBounds(207, 84, 158, 20);
panel.add(txtnum2);
txtnum2.setColumns(10);
JLabel lblNewLabel_1 = new JLabel("Number 1");
lblNewLabel_1.setFont(new Font("Tahoma", Font.BOLD, 14));
lblNewLabel_1.setBounds(38, 41, 102, 14);
panel.add(lblNewLabel_1);
JLabel lblNumber = new JLabel("Number 2");
lblNumber.setFont(new Font("Tahoma", Font.BOLD, 14));
lblNumber.setBounds(38, 87, 102, 14);
panel.add(lblNumber);
btnAdd = new JButton("+");
btnAdd.setBounds(10, 126, 89, 47);
panel.add(btnAdd);
btnMin = new JButton("-");
btnMin.setBounds(109, 126, 89, 47);
panel.add(btnMin);
btnSub = new JButton("*");
btnSub.setBounds(207, 126, 89, 47);
panel.add(btnSub);
btnDiv = new JButton("/");
btnDiv.setBounds(303, 126, 89, 47);
panel.add(btnDiv);
btnAdd.addActionListener(this);
btnMin.addActionListener(this);
btnSub.addActionListener(this);
btnDiv.addActionListener(this);
lblresult = new JLabel("New label");
lblresult.setForeground(Color.RED);
lblresult.setFont(new Font("Times New Roman", Font.BOLD, 24));
lblresult.setBounds(260, 276, 120, 28);
frame.getContentPane().add(lblresult);
lblResult = new JLabel("Result");
lblResult.setFont(new Font("Times New Roman", Font.BOLD, 22));
lblResult.setBounds(164, 276, 120, 28);
frame.getContentPane().add(lblResult);
}
public void getTotal(int operation)
{
if(txtnum1.getText().length()!=0 && txtnum2.getText().length()!=0)
{
switch(operation)
{
case 1:
lblresult.setText(""+(Double.parseDouble(txtnum1.getText()) + Double.parseDouble(txtnum2.getText())));
break;
case 2:
lblresult.setText(""+(Double.parseDouble(txtnum1.getText() ) - Double.parseDouble(txtnum2.getText())));
break;
case 3:
lblresult.setText(""+(Double.parseDouble(txtnum1.getText()) * Double.parseDouble(txtnum2.getText())));
break;
case 4:
lblresult.setText(""+(Double.parseDouble(txtnum1.getText()) / Double.parseDouble(txtnum2.getText())));
break;
}
}
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==btnAdd)
{
operation=1;
getTotal(operation);
}
else if(ae.getSource()==btnMin)
{
operation=2;
getTotal(operation);
}
else if(ae.getSource()==btnSub)
{
operation=3;
getTotal(operation);
}
else if(ae.getSource()==btnDiv)
{
operation=4;
getTotal(operation);
}
}
}
Inventory Management POS systems are now an essential part of modern businesses such as bookshops,…
If you're just beginning to learn Java GUI programming creating an Water System Calculator is a fantastic project for…
GitHub is a powerful tool used by teams and developers around the globe. This guide is…
It's like having a super-smart buddy that is always there to help you write stories,…
The UK is known for its rich history, diverse culture, and most of all its…
Do you have a plan for your next holiday? Being aware of the Bank Holidays within the…