0% found this document useful (0 votes)
78 views4 pages

Swing Calculator

This document describes a Java Swing calculator application. It imports necessary Java libraries and defines a Calc1 class that extends JFrame and implements ActionListener. The main method creates the frame, text field, and buttons for numbers, operators, equals and clear. It adds action listeners to the buttons and adds the components to a panel and frame. The actionPerformed method gets the button action, performs the calculation or operation based on the button pressed, and updates the text field display.

Uploaded by

additional23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views4 pages

Swing Calculator

This document describes a Java Swing calculator application. It imports necessary Java libraries and defines a Calc1 class that extends JFrame and implements ActionListener. The main method creates the frame, text field, and buttons for numbers, operators, equals and clear. It adds action listeners to the buttons and adds the components to a panel and frame. The actionPerformed method gets the button action, performs the calculation or operation based on the button pressed, and updates the text field display.

Uploaded by

additional23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Swing Calculator:

import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
class Calc1 extends JFrame implements ActionListener {
static JFrame f;

static JTextField l;

String s0, s1, s2;

Calc1()
{
s0 = s1 = s2 = "";
}

public static void main(String args[])


{
f = new JFrame("19CSE23-Calculator");

try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e) {
System.err.println(e.getMessage());
}

Calc1 c = new Calc1();

l = new JTextField(21);

l.setEditable(false);

JButton b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, ba, bs, bd, bm, be, beq,
beq1;

b0 = new JButton("0");
b1 = new JButton("1");
b2 = new JButton("2");
b3 = new JButton("3");
b4 = new JButton("4");
b5 = new JButton("5");
b6 = new JButton("6");
b7 = new JButton("7");
b8 = new JButton("8");
b9 = new JButton("9");
beq1 = new JButton("=");
ba = new JButton("+");
bs = new JButton("-");
bd = new JButton("/");
bm = new JButton("*");
beq = new JButton("C");
be = new JButton(".");

JPanel p = new JPanel();

bm.addActionListener(c);
bd.addActionListener(c);
bs.addActionListener(c);
ba.addActionListener(c);
b9.addActionListener(c);
b8.addActionListener(c);
b7.addActionListener(c);
b6.addActionListener(c);
b5.addActionListener(c);
b4.addActionListener(c);
b3.addActionListener(c);
b2.addActionListener(c);
b1.addActionListener(c);
b0.addActionListener(c);
be.addActionListener(c);
beq.addActionListener(c);
beq1.addActionListener(c);

p.add(l);
p.add(b1);
p.add(b2);
p.add(b3);
p.add(ba);
p.add(b4);
p.add(b5);
p.add(b6);
p.add(bs);
p.add(b7);
p.add(b8);
p.add(b9);
p.add(bm);
p.add(be);
p.add(b0);
p.add(beq);
p.add(bd);
p.add(beq1);

p.setBackground(Color.cyan);
f.add(p);

f.setSize(200, 220);
f.show();
}
public void actionPerformed(ActionEvent e)
{
String s = e.getActionCommand();

if ((s.charAt(0) >= '0' && s.charAt(0) <= '9') || s.charAt(0) == '.') {


if (!s1.equals(""))
s2 = s2 + s;
else
s0 = s0 + s;

l.setText(s0 + s1 + s2);
}
else if (s.charAt(0) == 'C') {
s0 = s1 = s2 = "";

l.setText(s0 + s1 + s2);
}
else if (s.charAt(0) == '=') {

double te;

if (s1.equals("+"))
te = (Double.parseDouble(s0) + Double.parseDouble(s2));
else if (s1.equals("-"))
te = (Double.parseDouble(s0) - Double.parseDouble(s2));
else if (s1.equals("/"))
te = (Double.parseDouble(s0) / Double.parseDouble(s2));
else
te = (Double.parseDouble(s0) * Double.parseDouble(s2));

l.setText(s0 + s1 + s2 + "=" + te);


s0 = Double.toString(te);
s1 = s2 = "";
}
else {
if (s1.equals("") || s2.equals(""))
s1 = s;
else {
double te;

if (s1.equals("+"))
te = (Double.parseDouble(s0) + Double.parseDouble(s2));
else if (s1.equals("-"))
te = (Double.parseDouble(s0) - Double.parseDouble(s2));
else if (s1.equals("/"))
te = (Double.parseDouble(s0) / Double.parseDouble(s2));
else
te = (Double.parseDouble(s0) * Double.parseDouble(s2));

s0 = Double.toString(te);
s1 = s;
s2 = "";
}
l.setText(s0 + s1 + s2);
}
}
}

You might also like