Olá pessoal eu comecei a programar em Java agora e estou tentando fazer um applet de uma calculadora que faça as 4 operações básicas, só que eu não sei como fazer para cada aperto no botão dos números 1,2,3,4...... fazer com que esses números sejam impressos no TextField para que quando a pessoa aperte em um operação este número seja guardado para que seja impresso outro número no TextField para ser operado e assim em diante.

Como vocês podem ver no código abaixo apenas o layout está pronto, por favor se alguém poder me ajudar eu agradeço.

 
import java.awt.*;
import  java.applet.*;
public class Calculadora extends Applet {
 
     TextField tela;
     Label l;
     Button b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,bigual,bce,badi,bsub,bmul,bdiv;
     Panel pcima,ptexto,pcentro;
 
 
 
 
 
 public void init() {
 
  setLayout (new BorderLayout());
 
 // setBackground(Color.orange); //Cor de fundo do Applet
 

  pcima= new Panel();
  pcima.setLayout(new GridLayout(2,1));//linhas,colunas
 
 l=new Label (" Pedro Neto Calculator v0.1 ");
  l.setFont(new Font("Times Roman",Font.BOLD,16)); //Atribui Fonte
  l.setBackground(Color.orange); //Atribui cor de fundo a label l
 
  tela= new TextField();
 
  ptexto=new Panel(); // por FlowLayout
  ptexto.add (l); //  o label ficará no Centro
 
  pcima.add (ptexto);
  pcima.add (tela);
  add ("North",pcima);
 
  pcentro=new Panel();
  pcentro.setLayout(new GridLayout(4,4));
 
  b7= new Button ("7");
  b7.setFont(new Font("Times Roman",Font.BOLD,22)); // fonte do botão
  b7.setForeground(Color.blue); // Cor da Fonte do Button
  pcentro.add (b7);
  b8= new Button ("8");
  b8.setFont(new Font("Times Roman",Font.BOLD,22));
  b8.setForeground(Color.blue);
  pcentro.add (b8);
  b9= new Button ("9");
  b9.setFont(new Font("Times Roman",Font.BOLD,22));
  b9.setForeground(Color.blue);
  pcentro.add (b9);
  badi= new Button ("+");
  badi.setFont(new Font("Times Roman",Font.BOLD,22));
  badi.setForeground(Color.blue);
  pcentro.add (badi);
  b4= new Button ("4");
  b4.setFont(new Font("Times Roman",Font.BOLD,22));
  b4.setForeground(Color.blue);
  pcentro.add (b4);
  b5= new Button ("5");
  b5.setFont(new Font("Times Roman",Font.BOLD,22));
  b5.setForeground(Color.blue);
  pcentro.add (b5);
  b6= new Button ("6");
  b6.setFont(new Font("Times Roman",Font.BOLD,22));
  b6.setForeground(Color.blue);
  pcentro.add (b6);
  bsub= new Button ("-");
  bsub.setFont(new Font("Times Roman",Font.BOLD,22));
  bsub.setForeground(Color.blue);
  pcentro.add (bsub);
  b1= new Button ("1");
  b1.setFont(new Font("Times Roman",Font.BOLD,22));
  b1.setForeground(Color.blue);
  pcentro.add (b1);
  b2= new Button ("2");
  b2.setFont(new Font("Times Roman",Font.BOLD,22));
  b2.setForeground(Color.blue);
  pcentro.add (b2);
  b3= new Button ("3");
  b3.setFont(new Font("Times Roman",Font.BOLD,22));
  b3.setForeground(Color.blue);
  pcentro.add (b3);
  bdiv= new Button ("/");
  bdiv.setFont(new Font("Times Roman",Font.BOLD,22));
  bdiv.setForeground(Color.blue);
  pcentro.add (bdiv);
  b0= new Button ("0");
  b0.setFont(new Font("Times Roman",Font.BOLD,22));
  b0.setForeground(Color.blue);
  pcentro.add (b0);
  bce= new Button ("CE");
  bce.setFont(new Font("Times Roman",Font.BOLD,22));
  bce.setForeground(Color.blue);
  pcentro.add (bce);
  bigual= new Button ("=");
  bigual.setFont(new Font("Times Roman",Font.BOLD,22));
  bigual.setForeground(Color.blue);
  pcentro.add (bigual);
  bmul= new Button ("*");
  bmul.setFont(new Font("Times Roman",Font.BOLD,22));
  bmul.setForeground(Color.blue);
  pcentro.add (bmul);
 
  add("Center",pcentro);// acrescenta Panel pcentro no centro do applet
 
   int num1[]=new int[15];
      }
 
 
 

        public void paint(Graphics g) {
        String s = tela.getText();
        g.drawString(s,40,50);
 
 
 
     }
     public boolean action(Event evt, Object arg) { // objetc é qualuqer classe será aceita
 
        if (evt.target instanceof Button)
        {
  if (arg=="1")
 
  tela.setText("1"); // o numero 1 é "impresso" na tela
 
      }
 
   return true;
 
     }
}
 
 
Pedro Neto :-)               
E-mail: [EMAIL PROTECTED]
Porto Alegre/RS -  BRASIL

Responder a