Calculadora [resolvido]

8 respostas
Fabiolafas

[i]Olá,
Gostaria que me ajudassem dando dicas de como eu poderia fazer uma calculadora com este codigo, em um Jrame!

Obrigada![/i]

class Calculadora  extends JFrame implements ActionListener{


        JButton espaco=new JButton("");
        JButton espaco2=new JButton("");
         JButton espaco3=new JButton("");



    JButton mais=new JButton("+");



    JButton menos=new JButton("-");



    JButton vezes=new JButton("*");
    JButton dividir=new JButton("/");
    JButton zero=new JButton("0");
    JButton um=new JButton("1");
    JButton dois=new JButton("2");
    JButton tres=new JButton("3");
    JButton quatro=new JButton("4");
    JButton cinco=new JButton("5");
    JButton seis=new JButton("6");
    JButton sete=new JButton("7");
    JButton oito=new JButton("8");
    JButton nove=new JButton("9");
     JButton igual=new JButton("=");
          JButton CE=new JButton("CE");
    //static double num1,num2,numeros,result;
    Scanner numeros = new Scanner(System.in);
    String sinal;
   int num1;
    int  num2;
    int result;

    JTextField mostrador;

     JPanel calc;

    public Calculadora(){

        setTitle("calculadora guj");
        setResizable(true);
        setSize(800, 800);

        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        setBackground(Color.yellow);

       mais.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     menos.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
      vezes.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     dividir.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
      zero.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     um.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
      dois.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     tres.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
      quatro.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     cinco.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
      seis.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     sete.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     oito.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     nove.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );
     igual.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );




         calc= new JPanel();
        calc.setLayout( new GridLayout(5,3));
        mostrador= new JTextField("");
        mostrador.setSize(100,20);
             mostrador.setFont (new Font ("Sans Serif", Font.BOLD,28 ) );



        calc.add(mostrador);



            calc.add(um);
             calc.add(dois);
              calc.add(tres);
               calc.add(quatro);
                calc.add(cinco);
                 calc.add(seis);
                  calc.add(sete);
                   calc.add(oito);
                    calc.add(nove);
                      calc.add(zero);
                       calc.add(CE);
                       calc.add(mais);

        calc.add(menos);
         calc.add(vezes);
          calc.add(dividir);
                        calc.add(igual);



              calc.add(espaco);
              calc.add(espaco2);
              calc.add(espaco3);


                    add(calc);
                     CE.addActionListener(this);
                    mais.addActionListener(this);
                     menos.addActionListener(this);
                      vezes.addActionListener(this);
                       dividir.addActionListener(this);
                        igual.addActionListener(this);
                         zero.addActionListener(this);
                         um.addActionListener(this);
                           dois.addActionListener(this);
                            tres.addActionListener(this);
                             quatro.addActionListener(this);
                              cinco.addActionListener(this);
                               seis.addActionListener(this);
                                sete.addActionListener(this);
                                 oito.addActionListener(this);
                                 nove.addActionListener(this);





    }

     public void actionPerformed(ActionEvent e) {

          if (e.getSource() == CE) {
           CE();
        }


         if (e.getSource() == mais) {
            operMais();
        }
        if (e.getSource() == menos) {
            operMenos();
        }
        if (e.getSource() == dividir) {
            operDiv();
        }
        if (e.getSource() == vezes) {
            operVezes();
        }
         if (e.getSource() == zero) {

            String apice= mostrador.getText();
            String vaiLa=apice+"0";
            mostrador.setText(vaiLa);

        }
         if (e.getSource() == um) {
        String apice2= mostrador.getText();
            String vaiLa2=apice2+"1";
            mostrador.setText(vaiLa2);
        }
         if (e.getSource() == dois) {
        String apice3= mostrador.getText();
            String vaiLa3=apice3+"2";
         mostrador.setText(vaiLa3);
        }
         if (e.getSource() == tres) {
             String apice4= mostrador.getText();
            String vaiLa4=apice4+"3";
             mostrador.setText(vaiLa4);
        }
          if (e.getSource() == quatro) {
             String apice5= mostrador.getText();
            String vaiLa5=apice5+"4";
              mostrador.setText(vaiLa5);
        }
          if (e.getSource() == cinco) {
             String apice6= mostrador.getText();
            String vaiLa6=apice6+"5";
              mostrador.setText(vaiLa6);
        }
          if (e.getSource() == seis) {
             String apice7= mostrador.getText();
            String vaiLa7=apice7+"6";
            mostrador.setText(vaiLa7);
        }

          if (e.getSource() == sete) {
             String apice8= mostrador.getText();
            String vaiLa8=apice8+"7";
              mostrador.setText(vaiLa8);
        }
          if (e.getSource() == oito) {
             String apice9= mostrador.getText();
            String vaiLa9=apice9+"8";
              mostrador.setText(vaiLa9);
        }
        if (e.getSource() == nove) {
             String apice10= mostrador.getText();
            String vaiLa10=apice10+"9";
               mostrador.setText(vaiLa10);
        }

        if (e.getSource() == igual) {
             igual();
        }
    // String apice= "";
      //      String vaiLa="";

     }


    public void um(){
        mostrador.setText("1");
    }


    public void igual() {

        if (sinal.equals("+")) {
           // mostrador.setText("");
            num2=Integer.parseInt(mostrador.getText());
            result=num1+num2;
          //  mostrador.setText("");
            mostrador.setText(""+result);
            num1=0;
            num2=0;
        }





        if (sinal.equals("-")) {
            num2=Integer.parseInt(mostrador.getText());
            result=num1-num2;
            mostrador.setText(""+result);
            num1=0;
            num2=0;
        }




        if (sinal.equals("*")) {
            num2=Integer.parseInt(mostrador.getText());
            result=num1*num2;
            mostrador.setText(""+result);
            num1=0;
            num2=0;
        }


        if (sinal.equals("/")) {
            num2=Integer.parseInt(mostrador.getText());
            result=num1/num2;
            mostrador.setText(""+result);
            num1=0;
            num2=0;
        }


    }


    public void  operMais(){




       num1= Integer.parseInt(mostrador.getText());
        sinal="+";
        mostrador.setText("");


    }

    public void  operMenos(){
     num1= Integer.parseInt(mostrador.getText());
       sinal="-";
       mostrador.setText("");



    }

    public   void  operVezes(){
    num1= Integer.parseInt(mostrador.getText());
        sinal="*";
          mostrador.setText("");

    }

    public void operDiv(){
 num1= Integer.parseInt(mostrador.getText());
        sinal="/";
          mostrador.setText("");




    }
    public void CE() {
        mostrador.setText("");
    }



   
}

8 Respostas

Thiago_MuiLoko

Dei uma olhada no codigo e não vi nada de anormal…

Onde está o erro? Qual a sua dúvida?

Fabiolafas

[i]Gostaria de fazer uma janelinha, uma Jframe…

Queria saber se dá para substituir o botão feito na classe por um feito no Jframe…[/i]

Ex:
JButton um=new JButton(“1”);

por

JButton jB1=new JButton(“1”);

ViniGodoy

Ué, mas aí vc já tem um JFrame. Esse código aí foi você quem fez?

Fabiolafas

[i]Não fui eu… Achei na internet…

Sim, tenho um frame, mas gostaria de ser separado…

L

é para estudos,o frame ja é uma janela!

Fabiolafas

[i]Sim é…

Que eu uso o netbeans, e esse codigo está rodando em uma classe java…
Queria que ele rodasse em um Jrame, sendo que eu faria os botões manualmente…

Essa é minha dúvida, como posso fazer isso?[/i]

L

haha então qq for passar pro netbeans esse codigo vc não vai ter o projeto com os botões não tendo o form,pq não faz mão tudu e depois vai colocando seu codigo nele!

Fabiolafas

Valeu já consegui fazer…

Criado 18 de agosto de 2010
Ultima resposta 18 de ago. de 2010
Respostas 8
Participantes 4