ola pessoal eu tenho um codigo fonte de uma calculadora bem simples, com as funções de + - / *, gostaria q alguem me ajudasse a colocar em cada linha do projeto uma explicação do q esta acontecendo
o codigo eh esse
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class ProjetoJava extends JFrame implements ActionListener {
private Container cont;
private JTextField txtValor1;
private JTextField txtValor2;
private ButtonGroup grupo;
private JRadioButton btMais;
private JRadioButton btMenos;
private JRadioButton btDivisao;
private JRadioButton btMultiplicaçao;
private JButton btResultado;
private JButton btSair;
private JPanel panelCentro;
private JPanel panelDir;
private JPanel panelSul;
private char op;
public static void main(String args[]) {
new ProjetoJava();
}
public ProjetoJava()
{
super ("Calculadora");
cont = getContentPane();
cont.setLayout(new BorderLayout());
panelCentro = new JPanel(new GridLayout(2,2,5,5));
panelDir = new JPanel(new GridLayout(4,1));
panelSul = new JPanel(new GridLayout(1,2));
btResultado = new JButton("Resultado");
btSair = new JButton("Sair");
grupo = new ButtonGroup();
btMais = new JRadioButton("Adição (+)",false);
btMenos = new JRadioButton("Subtração (-)",false);
btDivisao = new JRadioButton("Divisão(/)",false);
btMultiplicaçao = new JRadioButton("Multiplicação(*)",false);
txtValor1 = new JTextField();
txtValor2 = new JTextField();
grupo.add(btMais);
grupo.add(btMenos);
grupo.add(btDivisao);
grupo.add(btMultiplicaçao);
panelCentro.add(new JLabel("Digite o Primeiro Valor"));
panelCentro.add(txtValor1);
panelCentro.add(new JLabel("Digite o Segundo Valor"));
panelCentro.add(txtValor2);
panelDir.add(btMais);
panelDir.add(btMenos);
panelDir.add(btDivisao);
panelDir.add(btMultiplicaçao);
panelSul.add(btResultado);
panelSul.add(btSair);
btResultado.addActionListener(this);
btSair.addActionListener(this);
btMais.addActionListener(this);
btMenos.addActionListener(this);
btDivisao.addActionListener(this);
btMultiplicaçao.addActionListener(this);
cont.add(new JLabel("blablabla"), BorderLayout.NORTH);
cont.add(panelCentro, BorderLayout.CENTER);
cont.add(panelSul, BorderLayout.SOUTH);
cont.add(panelDir, BorderLayout.EAST);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setSize(300,140);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btResultado)calcula();
else if (e.getSource() == btSair)System.exit(0);
else if (e.getSource() == btMais)op = '+';
else if (e.getSource() == btMenos)op = '-';
else if (e.getSource() == btDivisao)op = '/';
else if (e.getSource() == btMultiplicaçao)op = '*';
}
public void calcula()
{
try {
Double v1 = new Double(txtValor1.getText().trim());
Double v2 = new Double(txtValor2.getText().trim());
double resultado;
switch (op) {
case '+': { resultado = v1.doubleValue() + v2.doubleValue(); break; }
case '-': { resultado = v1.doubleValue() - v2.doubleValue(); break; }
case '/': { resultado = v1.doubleValue() / v2.doubleValue(); break; }
case '*': { resultado = v1.doubleValue() * v2.doubleValue(); break; }
default: { resultado = 0; break; }
}
JOptionPane.showMessageDialog(null, new Double(resultado).toString());
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Conta Inexistente, verificar os números digitados.");
}
}
}
agradeço desde jah! :razz:
[size="11"][color="red"]* Editado: Lembre-se de utilizar BBCode em seus códigos - Erko[/color][/size] :joia: