Professional Documents
Culture Documents
============================================
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
//CONSTRUCTOR
public Calculator(){
f=new JFrame("Calculator");
f.setSize(350,350);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setResizable(false);
//BORDER LAYOUT
f.setLayout(new BorderLayout(5,5));
p1=new JPanel();
bl= new BorderLayout();
p1.setLayout(bl);
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(b4);
f.add(p2,BorderLayout.WEST);
/////////REGISTRATION OF EVENT//////////
b5.addActionListener(this);
b5.setActionCommand("sqrt");
b6.addActionListener(this);
b6.setActionCommand("%");
b7.addActionListener(this);
b7.setActionCommand("1/x");
b8.addActionListener(this);
b8.setActionCommand("=");
b10.addActionListener(this);
b10.setActionCommand("C");
b11.addActionListener(this);
b11.setActionCommand("CE");
b12.addActionListener(this);
b12.setActionCommand("7");
b13.addActionListener(this);
b13.setActionCommand("8");
b14.addActionListener(this);
b14.setActionCommand("9");
b15.addActionListener(this);
b15.setActionCommand("/");
b16.addActionListener(this);
b16.setActionCommand("4");
b17.addActionListener(this);
b17.setActionCommand("5");
b18.addActionListener(this);
b18.setActionCommand("6");
b19.addActionListener(this);
b19.setActionCommand("*");
b20.addActionListener(this);
b20.setActionCommand("1");
b21.addActionListener(this);
b21.setActionCommand("2");
b22.addActionListener(this);
b22.setActionCommand("3");
b23.addActionListener(this);
b23.setActionCommand("-");
b24.addActionListener(this);
b24.setActionCommand("0");
b25.addActionListener(this);
b25.setActionCommand("+/-");
b26.addActionListener(this);
b26.setActionCommand(".");
b27.addActionListener(this);
b27.setActionCommand("+");
tf1.setText("0.");
f.setVisible(true);
}
////////////EVENT LISTENER/HANDLER//////////
int num1=0,num2=0;
String Check;
StringBuilder sb=new StringBuilder();
public void actionPerformed(ActionEvent e){
int res;
String str=e.getActionCommand();
if(str.equals("0")){
sb.append("0");
tf1.setText(sb.toString());
}
else if(str.equals("1")){
sb.append("1");
tf1.setText(sb.toString());
}
else if(str.equals("2")){
sb.append("2");
tf1.setText(sb.toString());
}
else if(str.equals("3")){
sb.append("3");
tf1.setText(sb.toString());
}
else if(str.equals("4")){
sb.append("4");
tf1.setText(sb.toString());
}
else if(str.equals("5")){
sb.append("5");
tf1.setText(sb.toString());
}
else if(str.equals("6")){
sb.append("6");
tf1.setText(sb.toString());
}
else if(str.equals("7")){
sb.append("7");
tf1.setText(sb.toString());
}
else if(str.equals("8")){
sb.append("8");
tf1.setText(sb.toString());
}
else if(str.equals("9")){
sb.append("9");
tf1.setText(sb.toString());
}
else if(str.equals("+")){
num1=Integer.parseInt(tf1.getText());
Check="PLUS";
sb=new StringBuilder();
}
else if(str.equals("-")){
num1=Integer.parseInt(tf1.getText());
Check="MINUS";
sb=new StringBuilder();
}
else if(str.equals("*")){
num1=Integer.parseInt(tf1.getText());
Check="PRODUCT";
sb=new StringBuilder();
}
else if(str.equals("/")){
num1=Integer.parseInt(tf1.getText());
Check="DIVIDE";
sb=new StringBuilder();
}
else if(str.equals("=")){
num2=Integer.parseInt(tf1.getText());
if(Check.equals("PLUS")){
res=num1+num2;
tf1.setText(""+res);
sb=new StringBuilder();
}
else if(Check.equals("MINUS")){
res=num1-num2;
tf1.setText(""+res);
sb=new StringBuilder();
}
else if(Check.equals("PRODUCT")){
res=num1*num2;
tf1.setText(""+res);
sb=new StringBuilder();
}
else if(Check.equals("DIVIDE")){
res=num1/num2;
tf1.setText(""+res);
sb=new StringBuilder();
}
}
else if(str.equals("C")){
tf1.setText("0");
}
else if(str.equals("CE")){
tf1.setText("0");
}
else if(str.equals("1/x")){
float num3=Integer.parseInt(tf1.getText());
float num4=num3*num3;
float res1=num3/num4;
tf1.setText(""+res1);
sb=new StringBuilder();
}
else if(str.equals("+/-")){
num1=Integer.parseInt(tf1.getText());
res=num1*(-1);
tf1.setText(""+res);
sb=new StringBuilder();
}
else if(str.equals("sqrt")){
double num5=Integer.parseInt(tf1.getText());
double res2=Math.sqrt(num5);
tf1.setText(""+res2);
sb=new StringBuilder();
}
else if(str.equals("%")){
float num6=Integer.parseInt(tf1.getText());
float num7=Integer.parseInt(tf1.getText());
float res3=(num6/100)*num7;
tf1.setText(""+res3);
sb=new StringBuilder();
}
else if(str.equals(".")){
double num8=Integer.parseInt(tf1.getText());
double res4=num8;
tf1.setText(""+res4+".");
sb=new StringBuilder();
}
}
//PRIVATE MEMBERS
private JFrame f;
private JTextField tf1;
private BorderLayout bl;
private JPanel p1,p2,p3,p4,p5;
private JButton
b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,
b15,b16,b17,b18,b19,b20,b21,b22,b23,b24,b25,b26,b27;
}
//////////////////////CLIENT PROGRAM///////////////////
class Main{
public static void main(String a[]){
Calculator cal=new Calculator();
}
}
http://www.ravianeducation.blogspot.com
FARHAN: 03008855006