Java Notepad App Source Code | Build Your Own Notepad in Java (Swing UI)

Demo :


Click Video πŸ‘‡πŸ‘‡πŸ‘‡














πŸ“ Folder Structure:

/JavaScientificCalculator

   ├── src/

   │   ├── Main.java

   │   ├── Calculator.java

   ├── README.md

   ├── JavaScientificCalculator.iml

   ├── .gitignore

   ├── resources/

   │   ├── icon.png


Code :

1: Create Main.java

public class Main {
    public static void main(String[] args) {
        new Calculator();
    }
}


2: Create Calculator.java

     

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;


public class Calculator implements ActionListener {

    JFrame frame;

    JTextField textField;

    JButton[] numButtons = new JButton[10];

    JButton[] funcButtons = new JButton[9];

    JButton addButton, subButton, mulButton, divButton, decButton, equButton, delButton, clrButton, sqrtButton;

    JPanel panel;

    Font font = new Font("Arial", Font.BOLD, 18);

    double num1, num2, result;

    char operator;


    public Calculator() {

        frame = new JFrame("Java Scientific Calculator");

        frame.setSize(400, 500);

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        frame.setLayout(null);

        frame.setLocationRelativeTo(null);


        textField = new JTextField();

        textField.setBounds(50, 25, 300, 50);

        textField.setFont(font);

        textField.setEditable(false);

        frame.add(textField);


        addButton = new JButton("+");

        subButton = new JButton("-");

        mulButton = new JButton("*");

        divButton = new JButton("/");

        decButton = new JButton(".");

        equButton = new JButton("=");

        delButton = new JButton("DEL");

        clrButton = new JButton("CLR");

        sqrtButton = new JButton("√");


        funcButtons[0] = addButton;

        funcButtons[1] = subButton;

        funcButtons[2] = mulButton;

        funcButtons[3] = divButton;

        funcButtons[4] = decButton;

        funcButtons[5] = equButton;

        funcButtons[6] = delButton;

        funcButtons[7] = clrButton;

        funcButtons[8] = sqrtButton;


        for (int i = 0; i < 9; i++) {

            funcButtons[i].addActionListener(this);

            funcButtons[i].setFont(font);

        }


        for (int i = 0; i < 10; i++) {

            numButtons[i] = new JButton(String.valueOf(i));

            numButtons[i].addActionListener(this);

            numButtons[i].setFont(font);

        }


        panel = new JPanel();

        panel.setBounds(50, 100, 300, 300);

        panel.setLayout(new GridLayout(5, 4, 10, 10));


        panel.add(numButtons[7]);

        panel.add(numButtons[8]);

        panel.add(numButtons[9]);

        panel.add(divButton);

        panel.add(numButtons[4]);

        panel.add(numButtons[5]);

        panel.add(numButtons[6]);

        panel.add(mulButton);

        panel.add(numButtons[1]);

        panel.add(numButtons[2]);

        panel.add(numButtons[3]);

        panel.add(subButton);

        panel.add(numButtons[0]);

        panel.add(decButton);

        panel.add(equButton);

        panel.add(addButton);

        panel.add(sqrtButton);

        panel.add(delButton);

        panel.add(clrButton);


        frame.add(panel);

        frame.setVisible(true);

    }


    public void actionPerformed(ActionEvent e) {

        for (int i = 0; i < 10; i++) {

            if (e.getSource() == numButtons[i]) {

                textField.setText(textField.getText().concat(String.valueOf(i)));

            }

        }

        if (e.getSource() == decButton) {

            textField.setText(textField.getText().concat("."));

        }

        if (e.getSource() == addButton) {

            num1 = Double.parseDouble(textField.getText());

            operator = '+';

            textField.setText("");

        }

        if (e.getSource() == subButton) {

            num1 = Double.parseDouble(textField.getText());

            operator = '-';

            textField.setText("");

        }

        if (e.getSource() == mulButton) {

            num1 = Double.parseDouble(textField.getText());

            operator = '*';

            textField.setText("");

        }

        if (e.getSource() == divButton) {

            num1 = Double.parseDouble(textField.getText());

            operator = '/';

            textField.setText("");

        }

        if (e.getSource() == sqrtButton) {

            num1 = Double.parseDouble(textField.getText());

            textField.setText(String.valueOf(Math.sqrt(num1)));

        }

        if (e.getSource() == equButton) {

            num2 = Double.parseDouble(textField.getText());

            switch (operator) {

                case '+':

                    result = num1 + num2;

                    break;

                case '-':

                    result = num1 - num2;

                    break;

                case '*':

                    result = num1 * num2;

                    break;

                case '/':

                    result = num1 / num2;

                    break;

            }

            textField.setText(String.valueOf(result));

        }

        if (e.getSource() == clrButton) {

            textField.setText("");

        }

        if (e.getSource() == delButton) {

            String str = textField.getText();

            textField.setText(str.substring(0, str.length() - 1));

        }

    }


    public static void main(String[] args) {

        new Calculator();

    }






Comments

Popular posts from this blog

πŸš€ Simple Login & Registration System in Python Tkinter πŸ“±

πŸš€ Create a Python Screen Recorder with Audio (Complete Code)

πŸ“‘ Fuzzu Packet Sniffer – Python GUI for Real-Time IP Monitoring | Tkinter + Scapy