package prjcalculadora;
public class Principal {
public static void main(String[] args) {
TelaCalc tela = new TelaCalc();
tela.setVisible(true);
}
}
________________________________________________________________________________
package prjcalculadora;
public class Operacoes {
private double resultado;
private double valor1;
private double valor2;
public double getResultado() {
return resultado;
}
public void setResultado(double resultado) {
this.resultado = resultado;
}
public double somar(double num1, double num2){
return num1 + num2;
}
public double subtrair(double num1, double num2){
return num1 - num2;
}
public double dividir(double num1, double num2){
return num1 / num2;
}
public double multiplicar(double num1, double num2){
return num1 * num2;
}
public double getValor1() {
return valor1;
}
public void setValor1(double valor1) {
this.valor1 = valor1;
}
public double getValor2() {
return valor2;
}
public void setValor2(double valor2) {
this.valor2 = valor2;
}
}
_________________________________________________________________________________
package prjcalculadora;
import java.awt.Button;
import java.awt.Dimension;
import java.awt.Label;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class TelaCalc extends JFrame implements WindowListener, ActionListener {
protected Label lblValor1;
protected Label lblValor2;
protected Label lblResultado;
protected TextField txtValor1;
protected TextField txtValor2;
protected TextField txtResultado;
protected Button cmdSomar, cmdSubtrair, cmdDividir, cmdMultiplicar;
protected TextArea txtOperacoes;
protected Dimension dLabel, dTextField, dButton, dTextArea, dFrame, dLabel2;
public Operacoes cal;
public TelaCalc(){
cal = new Operacoes();
dFrame = new Dimension(400,400);
dLabel = new Dimension(40,20);
dLabel2 = new Dimension(60,20);
dTextField = new Dimension(60,20);
dButton = new Dimension(80,50);
dTextArea = new Dimension(300,100);
this.setTitle("Calculadora");
this.setSize(dFrame);
this.setLocation(300, 200);
this.setResizable(false);
this.setLayout(null);
lblValor1 = new Label("Valor 1 ");
lblValor1.setSize(dLabel);
lblValor1.setLocation(45,70);
lblValor2 = new Label("Valor 2 ");
lblValor2.setSize(dLabel);
lblValor2.setLocation(45,100);
txtValor1 = new TextField(null);
txtValor1.setSize(dTextField);
txtValor1.setLocation(95,70);
txtValor2 = new TextField(null);
txtValor2.setSize(dTextField);
txtValor2.setLocation(95,100);
cmdSomar = new Button("Somar");
cmdSomar.setSize(dButton);
cmdSomar.setLocation(165, 50);
cmdSubtrair = new Button("Subtrair");
cmdSubtrair.setSize(dButton);
cmdSubtrair.setLocation(260, 50);
cmdDividir = new Button("Dividir");
cmdDividir.setSize(dButton);
cmdDividir.setLocation(165, 120);
cmdMultiplicar = new Button("Multiplicar");
cmdMultiplicar.setSize(dButton);
cmdMultiplicar.setLocation(260, 120);
txtOperacoes = new TextArea(null);
txtOperacoes.setSize(dTextArea);
txtOperacoes.setLocation(45,240);
lblResultado = new Label("Resultado: ");
lblResultado.setSize(dLabel2);
lblResultado.setLocation(115,190);
txtResultado = new TextField(null);
txtResultado.setSize(dTextField);
txtResultado.setLocation(185,190);
add(lblValor1);
add(lblValor2);
add(txtValor1);
add(txtValor2);
add(cmdSomar);
add(cmdSubtrair);
add(cmdDividir);
add(cmdMultiplicar);
add(txtOperacoes);
add(txtResultado);
add(lblResultado);
cmdSomar.addActionListener(this);
cmdSubtrair.addActionListener(this);
cmdDividir.addActionListener(this);
cmdMultiplicar.addActionListener(this);
}
@Override
public void windowOpened(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void windowClosing(WindowEvent we) {
JOptionPane.showMessageDialog(null, "Fechando a janela");
System.exit(0);
}
@Override
public void windowClosed(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void windowIconified(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void windowDeiconified(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void windowActivated(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void windowDeactivated(WindowEvent we) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void actionPerformed(ActionEvent ae) {
if (ae.getSource()==cmdSomar){
double valor1;
double valor2;
valor1 = Double.parseDouble(txtValor1.getText());
valor2 = Double.parseDouble(txtValor2.getText());
double resultado;
resultado = cal.somar(valor1, valor2);
txtResultado.setText(String.valueOf(resultado));
}
if (ae.getSource()==cmdSubtrair){
double valor1;
double valor2;
valor1 = Double.parseDouble(txtValor1.getText());
valor2 = Double.parseDouble(txtValor2.getText());
double resultado;
resultado = cal.subtrair(valor1, valor2);
txtResultado.setText(String.valueOf(resultado));
}
if (ae.getSource()==cmdDividir){
double valor1;
double valor2;
valor1 = Double.parseDouble(txtValor1.getText());
valor2 = Double.parseDouble(txtValor2.getText());
double resultado;
resultado = cal.dividir(valor1, valor2);
txtResultado.setText(String.valueOf(resultado));
resultado = cal.dividir(valor1,valor2);
txtOperacoes.append(valor1 + " / " + valor2 + "= " + resultado + "\n");
}
if (ae.getSource()==cmdMultiplicar){
double valor1;
double valor2;
valor1 = Double.parseDouble(txtValor1.getText());
valor2 = Double.parseDouble(txtValor2.getText());
double resultado;
resultado = cal.multiplicar(valor1, valor2);
txtResultado.setText(String.valueOf(resultado));
}
}
}

Nenhum comentário:
Postar um comentário