Simple Calculator GUI2
Simple Calculator GUI2
*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public SimpleCalculatorGUI() {
setTitle("Simple Calculator");
setSize(400, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
addButton = createButton("+");
subButton = createButton("-");
mulButton = createButton("*");
divButton = createButton("/");
functionButtons[0] = addButton;
functionButtons[1] = subButton;
functionButtons[2] = mulButton;
functionButtons[3] = divButton;
clrButton = createButton("C");
eqButton = createButton("=");
delButton = createButton("DEL");
panel.add(clrButton);
panel.add(delButton);
for (int i = 0; i < 4; i++) {
panel.add(functionButtons[i]);
}
for (int i = 1; i < 10; i++) {
panel.add(numberButtons[i]);
}
panel.add(numberButtons[0]);
panel.add(eqButton);
add(textField, BorderLayout.NORTH);
add(panel, BorderLayout.CENTER);
setLayout(new BorderLayout());
setLocationRelativeTo(null);
setVisible(true);
addActionListeners();
}
delButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String currentText = textField.getText();
if (!currentText.isEmpty()) {
textField.setText(currentText.substring(0, currentText.length()
- 1));
}
}
});
eqButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculateResult();
}
});
}
num1 = Double.parseDouble(numbers[0]);
num2 = Double.parseDouble(numbers[1]);
if (expression.contains("+")) {
operator = '+';
result = num1 + num2;
} else if (expression.contains("-")) {
operator = '-';
result = num1 - num2;
} else if (expression.contains("*")) {
operator = '*';
result = num1 * num2;
} else if (expression.contains("/")) {
if (num2 != 0) {
operator = '/';
result = num1 / num2;
} else {
JOptionPane.showMessageDialog(this, "Cannot divide by zero.",
"Error", JOptionPane.ERROR_MESSAGE);
return;
}
}
textField.setText(String.valueOf(result));
}