/media/sda-magnetic/david/Dok-15-2023-11-27/fernuni-hagen/cs-i-ii/old-cs-2-03/java-new/2020-12-06/CalcProg.java


import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.ActionListener;
import javax.swing.*;

public class Calc  extends JFrame implements ActionListener {
                Frame f = new BaseFrame ();
                Button but1 = new Button ("1");
            Button but2 = new Button ("2");
            Button but3 = new Button ("3");
            Button but4 = new Button ("4");
            Button but5 = new Button ("5");
            Button but6 = new Button ("6");
            Button but7 = new Button ("7");
            Button but8 = new Button ("8");
            Button but9 = new Button ("9");
            Button but0 = new Button ("0");
        
            Button butadd = new Button ("+");
            Button butsub = new Button ("-");
            Button butmul = new Button ("*");
            Button butdiv = new Button ("/");

    public static class BaseFrame extends Frame {
        public BaseFrame () {
            setSize (300, 400);
            setLocationRelativeTo (null);
            setVisible (true);
        }
            
    }
    
    public Calc () {

            f.setLayout(null);
                    but1.addActionListener(this);
            but2.addActionListener(this);
            but3.addActionListener(this);

        
        
            but1.setSize(50, 50);
            but2.setSize(50, 50);
            but3.setSize(50, 50);
            but4.setSize(50, 50);
            but5.setSize(50, 50);
            but6.setSize(50, 50);
            but7.setSize(50, 50);
            but8.setSize(50, 50);
            but9.setSize(50, 50);
            but0.setSize(50, 50);
            butadd.setSize(50, 50);
            butsub.setSize(50, 50);
            butmul.setSize(50, 50);
            butdiv.setSize(50, 50);
            but1.setLocation (50, 50+50);
            but2.setLocation (50+50+10, 50+50);
            but3.setLocation (50+50+10+50+10, 50+50);
            but4.setLocation (50, 50+50+50+10);
            but5.setLocation (50+50+10, 50+50+50+10);        
            but6.setLocation (50+50+10+50+10, 50+50+50+10);        
            but7.setLocation (50, 50+50+50+10+50+10);
            but8.setLocation (50+50+10, 50+50+50+10+50+10);        
            but9.setLocation (50+50+10+50+10, 50+50+50+10+50+10);  
            but0.setLocation (50+50+10, 50+50+50+10+50+10+50+10);        
            butadd.setLocation (25, 50+50+50+10+50+10+50+10+50+10);
            butsub.setLocation (25+50+10, 50+50+50+10+50+10+50+10+50+10);
            butmul.setLocation (25+50+10+50+10, 50+50+50+10+50+10+50+10+50+10);
            butdiv.setLocation (25+50+10+50+10+50+10, 50+50+50+10+50+10+50+10+50+10);
        
            f.add (but1);
            f.add (but2);
            f.add (but3);
            f.add (but4);
            f.add (but5);
            f.add (but6);
            f.add (but7);
            f.add (but8);
            f.add (but9);
            f.add (but0);
            f.add (butadd);
            f.add (butsub);
            f.add (butmul);
            f.add (butdiv);
            
            TextField tf = new TextField ("", 10);
            tf.setLocation (25, 50);
            tf.setSize (255, 25);
            tf.setEditable (false);
            f.add (tf);
            
            but0.addActionListener (new ButtonListener());

    }
    public static void main (String [] args) {
        Calc calc = new Calc();
    }

}