Calculadora

Alguem me ajuda?! To precisando saber como faço para que a calculadora some, diminua, divida ou multiplique, dependendo do botao que a pessoa apertar. Ja consegui fazer com que ela faça uma dessas coisas mas nao tenho a escolha. Por favor me ajude! Olhem o código até agora. Obrigado!

import javax.swing.*; //importa o pacote swing

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.*; //importa o pacote de eventos

public class Calc extends JFrame { //inicio classe Calc

private JTextField jtfResultado;	//TextField do resultado

private JButton jb1,				//Botão 1
				jb2,				//Botão 2
				jb3,				//Botão 3
				jb4,				//Botão 4
				jb5,				//Botão 5
				jb6,				//Botão 6
				jb7,				//Botão 7
				jb8,				//Botão 8
				jb9,				//Botão 9
				jb0,				//Botão 0
				jbIgual,			//Botão =
				jbMais,				//Botão +
				jbMenos,			//Botão -
				jbDividido,			//Botão /
				jbMultiplicado;		//Botão *

private JPanel p1,					//Painel onde aparece o resultado
			   p2;					//Painel com os botões

		String numeroS;				//Guarda os numeros que o usuário digita

		int numero1I, numero2I;				//Guarda os numeros que o usuário digita, mas em integer!

public Calc() {					//Inicia o método Calc
	
	numeroS = "";
	
	jb1 = new JButton("1");	//Atribui o valor 1 ao jb1;
	jb2 = new JButton("2");				
	jb3 = new JButton("3");				
	jb4 = new JButton("4");				
	jb5 = new JButton("5");				
	jb6 = new JButton("6");				
	jb7 = new JButton("7");				
	jb8 = new JButton("8");				
	jb9 = new JButton("9");				
	jb0 = new JButton("0");				
	jbIgual = new JButton("=");			
	jbMais = new JButton("+");			
	jbMenos = new JButton("-");			
	jbDividido = new JButton("/");		
	jbMultiplicado = new JButton("*");	
	jtfResultado = new JTextField(10);
	
	p1 = new JPanel(new GridLayout(1,1));
    p2 = new JPanel(new GridLayout(4,5));

	p1.add(jtfResultado);	//Adiciona o jtfResultado no 1º painel
	
	p2.add (jb7);		//Adiciona o botão 1 ao 2º painel
	p2.add (jb8);
	p2.add (jb9);
	p2.add (jbMultiplicado);
	p2.add (jb4);
	p2.add (jb5);
	p2.add (jb6);
	p2.add (jbDividido);
	p2.add (jb1);
	p2.add (jb2);
	p2.add (jb3);
	p2.add (jbMais);
	p2.add (jb0);
	p2.add (jbIgual);
	p2.add (jbMenos);
	
	
	
	getContentPane().add(p1);
	getContentPane().add(p2);
	getContentPane().setLayout(new BorderLayout());
	getContentPane().add("North",p1);
	getContentPane().add("South",p2);
	pack();
	setVisible(true);

// Início de eventos

	jb0.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			jtfResultado.setText(numeroS = numeroS + "0");

		}
	});
	
	jb1.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "1");

		}
	});
	
	jb2.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "2");

		}
	});
	
	jb3.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "3");

		}
	});
	
	jb4.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "4");

		}
	});
	
	jb5.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "5");

		}
	});
	
	jb6.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "6");

		}
	});
	
	jb7.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "7");

		}
	});
	
	jb8.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "8");

		}
	});
	
	jb9.addActionListener(new ActionListener(){
		public void actionPerformed(ActionEvent e)
	 	{
			 jtfResultado.setText(numeroS = numeroS + "9");

		}
	});
	
	
	jbMais.addActionListener (new ActionListener(){
		public void actionPerformed (ActionEvent e)
		{
			numero1I = Integer.parseInt(numeroS);
			numeroS = "";
			jtfResultado.setText("0");
		}	
	});
		
	jbMenos.addActionListener (new ActionListener(){
		public void actionPerformed (ActionEvent e)
		{
			numero1I = Integer.parseInt(numeroS);
			numeroS = "";
			jtfResultado.setText("0");
		}	
	});
	
	jbIgual.addActionListener (new ActionListener(){
		public void actionPerformed (ActionEvent e)
		{
			numero2I = Integer.parseInt(numeroS);
			numero2I = numero2I + numero1I;
			numeroS = Integer.toString(numero2I);
			jtfResultado.setText(numeroS);
		
		}	
	});
		
	
//	jtfResultado.addActionListener(new ActionListener(){
//		public void actionPerformed(ActionEvent e)
//	 	{
//			 jtfResultado.setText(jtfResultado.getText());
//
//		}
//	});
	
	
	
	}		//Fecha o método Calc

public static void main(String args[]) {

Calc j = new Calc();

}
}

da uma olhada nesse codigo aki, nao eh muito bom mas talvez tire sua duvida…

[code]import java.awt.event.;
import java.awt.
;
import javax.swing.*;

public class Calc extends JFrame {

JPanel painel1, painel2;
JTextField resultado;
JButton botao0, botao1, botao2, botao3, botao4,
botao5, botao6, botao7, botao8, botao9, botaoc, igual, vezes, mais, menos, dividir, ponto;
int z = 999, y, i=0;
int soma, multi, div, sub;
String k = "";


public static void main (String args[]) {
	
	JFrame.setDefaultLookAndFeelDecorated(true);
	Calc c = new Calc();
	
}

Calc() {

resultado = new JTextField(15);
botaoc = new JButton("C");
botao0 = new JButton("0");
botao1 = new JButton("1");
botao2 = new JButton("2");
botao3 = new JButton("3");
botao4 = new JButton("4");
botao5 = new JButton("5");
botao6 = new JButton("6");
botao7 = new JButton("7");
botao8 = new JButton("8");
botao9 = new JButton("9");
ponto = new JButton(".");
igual = new JButton("=");
vezes = new JButton("*");
mais = new JButton("+");
menos = new JButton("-");
dividir = new JButton("/");

JPanel painel1 = new JPanel();
getContentPane().add(painel1);
painel1.add(resultado); resultado.setEditable(false);
painel1.add(botaoc);

JPanel painel2 = new JPanel();
painel2.setLayout(new GridLayout(4, 4));
painel2.add(botao7);
painel2.add(botao8);
painel2.add(botao9);
painel2.add(mais);
painel2.add(botao4);
painel2.add(botao5);
painel2.add(botao6);
painel2.add(menos);
painel2.add(botao1);
painel2.add(botao2);
painel2.add(botao3);
painel2.add(vezes);
painel2.add(botao0);
painel2.add(ponto); ponto.setEnabled(false);
painel2.add(igual);
painel2.add(dividir);


add(painel1, "North");
add(painel2, "South");

// PROPRIEDADES
setTitle("Calculadora v0.1");
setResizable(false);
setLocationRelativeTo(null);
pack();
//setSize(250, 200);
setVisible(true);
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );




// botaoc
botaoc.addActionListener(new ActionListener(){ // adiciona o ouvinte
    public void actionPerformed(ActionEvent e) {
    	resultado.setText(""); //trantando o evento
    	soma = 0;
    	multi= 0; 
    	div = 0;
    	sub = 0;
    	z = 999;
    	y = 0;
    	k = "";
}

});

//botao0
botao0.addActionListener(new ActionListener(){ // adiciona o ouvinte
    public void actionPerformed(ActionEvent e) {
    	
    	resultado.setText(resultado.getText() + "0");
    	
    	k = k + "0";
    	
    	
}

});

// botao1
botao1.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "1");
    	
    	k = k + "1";
}

});

// botao2
botao2.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "2");
    	
    	k = k + "2";
}

});

// botao3
botao3.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "3");
    	
    	k = k + "3";
    	   		

}

});

// botao4
botao4.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "4");
    	
    	k = k + "4";

}

});

// botao5
botao5.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "5");
    	
    	k = k + "5";

}

});

// botao6
botao6.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "6");
    	
    	k = k + "6";
    	
}

});

// botao7
botao7.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "7");
    	
    	k = k + "7";

}

});

// botao8
botao8.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "8");
    	
    	k = k + "8";

}

});

// botao9
botao9.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + "9");
    	
    	k = k + "9";

}

});

// ponto
ponto.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + ".");

}

});

// mais
mais.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + " + ");
    	z = 0;
    	y = y + Integer.parseInt(k);
    	k="";
    	
}

});

// menos
menos.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + " - ");
    	z = 1;
    	y = y + Integer.parseInt(k);
    	k="";
    	
}

});

// vezes
vezes.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + " * ");
    	z = 2;
    	y = y + Integer.parseInt(k);
    	k="";
}

});

// dividir
dividir.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	resultado.setText(resultado.getText() + " / ");
    	z = 3;
    	y = y + Integer.parseInt(k);
    	k="";
}

});

// igual
igual.addActionListener(new ActionListener(){ // adiciona o ouvinte
public void actionPerformed(ActionEvent e) {

    	switch (z){
    	case 0:
    		y = y + Integer.parseInt(k);
    		resultado.setText(String.valueOf (y));
    		
    	break;
    	
    	case 1:
    		y = y - Integer.parseInt(k);
    		resultado.setText(String.valueOf (y));
    	break;
    	
    	case 2:
    		y = y * Integer.parseInt(k);
    		resultado.setText(String.valueOf (y));
    	break;
    	
    	case 3:
    		y = y / Integer.parseInt(k);
    		resultado.setText(String.valueOf (y));
    	break;
    		
    	}
}

});

}
}[/code]

Tenta esse aqui tbm :arrow: Calculadora

Um abraço!

:!: Ops!.. Só um probleminha neste exemplo acima:

10 + 10

clic “=” = 20

clic “=” = 30

clic “+ 10” e clic “=” = 50!