Simple Calculator
Simple Calculator
*;
import javax.swing.border.EmptyBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//Functions
JButton op1 = new JButton("+");
configureButton(op1);
op1.setFont(font);
op1.setBounds(55, 250, 37, 31);
JButton op2 = new JButton("-");
configureButton(op2);
op2.setFont(font);
op2.setBounds(99, 250, 37, 31);
JButton op3 = new JButton("×");
configureButton(op3);
op3.setFont(font);
op3.setBounds(143, 250, 37, 31);
JButton op4 = new JButton("÷");
configureButton(op4);
op4.setFont(font);
op4.setBounds(185, 250, 37, 31);
JButton op6 = new JButton("%");
configureButton(op6);
op6.setFont(font);
op6.setBounds(228, 250, 37, 31);
JButton op5 = new JButton("=");
configureButton(op5);
op5.setFont(font);
op5.setBounds(228, 287, 37, 31);
JButton op7 = new JButton("CLEAR");
configureButton(op7);
op7.setFont(font);
op7.setBounds(55, 287, 167, 31);
//Borders
JLabel border1 = new JLabel();
border1.setBounds(47, 177, 227, 150);
border1.setBorder(BorderFactory.createLineBorder(Color.decode("#7151D0"), 2));
JLabel border2 = new JLabel();
border2.setBounds(47, 217, 227, 155);
border2.setBorder(BorderFactory.createLineBorder(Color.decode("#7151D0"), 2));
// Action Listeners
op1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
double sum = Double.parseDouble(number1) + Double.parseDouble(number2);
result.setText(String.valueOf(" " + sum));
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
});
op2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
double difference = Double.parseDouble(number1) - Double.parseDouble(number2);
result.setText(String.valueOf(" " + difference));
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
});
op3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
double product = Double.parseDouble(number1) * Double.parseDouble(number2);
result.setText(String.valueOf(" " + product));
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
});
op4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
double quotient = Double.parseDouble(number1) / Double.parseDouble(number2);
result.setText(String.valueOf(" " + quotient));
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
});
op5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
result.setText(" Select operation");
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
});
op6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String number1 = num1.getText();
String number2 = num2.getText();
if (!number1.isEmpty() && !number2.isEmpty()) {
if (Double.parseDouble(number2) != 0) {
double modulus = Double.parseDouble(number1) % Double.parseDouble(number2);
result.setText(String.valueOf(" " + modulus));
result.setFont(font);
result.setForeground(Color.decode("#7151D0"));
}
}
}
});
op7.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
num1.setText(" ");
num2.setText(" ");
result.setText(" ");
}
});
//add to frame
frame.add(op1);
frame.add(op2);
frame.add(op3);
frame.add(op4);
frame.add(op5);
frame.add(op6);
frame.add(op7);
frame.add(num1);
frame.add(num2);
frame.add(result);
frame.add(lab1);
frame.add(lab2);
frame.add(lab3);
frame.add(border1);
frame.add(border2);