Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.Dimension;
- import java.awt.event.ActionListener;
- import java.awt.event.ActionEvent;
- @SuppressWarnings("serial")
- public class MathGUI extends JFrame{
- public String opreator;
- private JTextArea textOut;
- private JLabel lblError;
- public MathGUI() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setTitle("Calculator");
- getContentPane().setLayout(null);
- textOut = new JTextArea();
- textOut.setBounds(6, 6, 318, 105);
- getContentPane().add(textOut);
- JButton btnPlus = new JButton("+");
- btnPlus.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- opreator = "+";
- try {
- String FirstNumberString = txtFirstNumber.getText();
- int FirstNumber = Integer.parseInt(FirstNumberString);
- String SecondNumberString = txtSecondNumber.getText();
- int SecondNumber = Integer.parseInt(SecondNumberString);
- doMath(FirstNumber, opreator, SecondNumber);
- textOut.setText("Answer: " + Final);
- } catch (Exception ex) {
- lblError.setText("Please use small numbers");
- }
- }
- });
- btnPlus.setBounds(207, 123, 117, 29);
- getContentPane().add(btnPlus);
- JButton btnMinus = new JButton("-");
- btnMinus.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- opreator = "-";
- try {
- String FirstNumberString = txtFirstNumber.getText();
- int FirstNumber = Integer.parseInt(FirstNumberString);
- String SecondNumberString = txtSecondNumber.getText();
- int SecondNumber = Integer.parseInt(SecondNumberString);
- doMath(FirstNumber, opreator, SecondNumber);
- textOut.setText("Answer: " + Final);
- } catch (Exception ey) {
- lblError.setText("Please use small numbers");
- }
- }
- });
- btnMinus.setBounds(207, 164, 117, 29);
- getContentPane().add(btnMinus);
- JButton btnMutiply = new JButton("*");
- btnMutiply.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- opreator = "*";
- try {
- String FirstNumberString = txtFirstNumber.getText();
- int FirstNumber = Integer.parseInt(FirstNumberString);
- String SecondNumberString = txtSecondNumber.getText();
- int SecondNumber = Integer.parseInt(SecondNumberString);
- doMath(FirstNumber, opreator, SecondNumber);
- textOut.setText("Answer: " + Final);
- } catch (Exception ez) {
- lblError.setText("Please use small numbers");
- }
- }
- });
- btnMutiply.setBounds(207, 205, 117, 29);
- getContentPane().add(btnMutiply);
- JButton btnDivide = new JButton("/");
- btnDivide.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- opreator = "/";
- try {
- String FirstNumberString = txtFirstNumber.getText();
- int FirstNumber = Integer.parseInt(FirstNumberString);
- String SecondNumberString = txtSecondNumber.getText();
- int SecondNumber = Integer.parseInt(SecondNumberString);
- doMath(FirstNumber, opreator, SecondNumber);
- textOut.setText("Answer: " + Final);
- } catch (Exception ea) {
- lblError.setText("Please use small numbers");
- }
- }
- });
- btnDivide.setBounds(207, 246, 117, 29);
- getContentPane().add(btnDivide);
- JButton btnPercentage = new JButton("%");
- btnPercentage.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- opreator = "%";
- try {
- String FirstNumberString = txtFirstNumber.getText();
- int FirstNumber = Integer.parseInt(FirstNumberString);
- String SecondNumberString = txtSecondNumber.getText();
- int SecondNumber = Integer.parseInt(SecondNumberString);
- doMath(FirstNumber, opreator, SecondNumber);
- textOut.setText("Answer: " + Final);
- } catch (Exception eb) {
- lblError.setText("Please use small numbers");
- }
- }
- });
- btnPercentage.setBounds(207, 287, 117, 29);
- getContentPane().add(btnPercentage);
- txtFirstNumber = new JTextField();
- txtFirstNumber.setBounds(89, 123, 117, 26);
- getContentPane().add(txtFirstNumber);
- txtFirstNumber.setColumns(10);
- JLabel lblFirstNumber = new JLabel("First Number");
- lblFirstNumber.setBounds(6, 128, 87, 16);
- getContentPane().add(lblFirstNumber);
- JLabel lblSecondNumber = new JLabel("Second Number");
- lblSecondNumber.setBounds(6, 156, 105, 16);
- getContentPane().add(lblSecondNumber);
- txtSecondNumber = new JTextField();
- txtSecondNumber.setBounds(109, 151, 97, 26);
- getContentPane().add(txtSecondNumber);
- txtSecondNumber.setColumns(10);
- lblError = new JLabel("");
- lblError.setVerticalAlignment(SwingConstants.BOTTOM);
- lblError.setHorizontalAlignment(SwingConstants.CENTER);
- lblError.setBounds(6, 190, 189, 126);
- getContentPane().add(lblError);
- }
- int Final = 0;
- private JTextField txtFirstNumber;
- private JTextField txtSecondNumber;
- public int doMath(int number1, String opreator, int number2) {
- try {
- switch (opreator) {
- case "+":
- Final = number1 + number2;
- lblError.setText("");
- break;
- case "-":
- Final = number1 - number2;
- lblError.setText("");
- break;
- case "*":
- Final = number1 * number2;
- lblError.setText("");
- break;
- case "/":
- Final = number1 / number2;
- lblError.setText("");
- break;
- case "%":
- Final = number1 % number2;
- lblError.setText("");
- break;
- default:
- lblError.setText("Error: had to do with opreator");
- }
- } catch (Exception e) {
- lblError.setText("Please use small numbers");
- }
- return Final;
- }
- public static void main(String[] args) {
- MathGUI math = new MathGUI();
- math.setSize(new Dimension(331,351));
- math.setVisible(true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement