quinta-feira, 2 de junho de 2016

Java - Calculadora Simples




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