Vous êtes sur la page 1sur 8

import java.awt.*; import java.awt.event.*; class Calculadora extends Frame { private Label visor = new Label ("0", Label.

RIGHT); private Button botao0 botao1 botao2 botao3 botao4 botao5 botao6 botao7 botao8 botao9 botaoSoma botaoSubt botaoMult botaoDivi botaoRstd botaoLimp = = = = = = = = = = = = = = = = new new new new new new new new new new new new new new new new Button Button Button Button Button Button Button Button Button Button Button Button Button Button Button Button ("0"), ("1"), ("2"), ("3"), ("4"), ("5"), ("6"), ("7"), ("8"), ("9"), ("+"), ("-"), ("*"), ("/"), ("="), ("C");

private boolean substitui = true; private double operando1; private char operador = ' '; private void trateClickEmDigito (char dig) { if (this.substitui) { this.visor.setText ("" + dig); this.substitui = false; } else this.visor.setText (this.visor.getText () + dig); } private void trateClickEmOperacao (char opr) { this.trateClickEmResultado (); this.operando1 = new Double (this.visor.getText ()) .doubleValue (); this.operador = opr; } private void trateClickEmResultado () { if (this.operador != ' ') { double operando2 = new Double (this.visor.getText ()).doubleValue (), resultado = 0;

switch (this.operador) { case '+': resultado = this.operando1 + operando2; break; case '-': resultado = this.operando1 - operando2; break; case '*': resultado = this.operando1 * operando2; break; case '/': resultado = this.operando1 / operando2; } if (((long)resultado) == resultado) this.visor.setText ("" + ((long)resultado)); else this.visor.setText ("" + resultado); this.operador = ' '; } this.substitui = true; } private void trateClickEmLimpar () { this.visor.setText ("0"); this.operador = ' '; this.substitui = true; } private void trateFechamentoDaJanela () { System.exit (0); } public Calculadora () { BorderLayout layoutCalculadora = new BorderLayout (); this.setTitle ("Calculadora"); this.setSize (200,200); this.setLayout (layoutCalculadora); Panel botoes = new Panel (); GridLayout layoutBotoes = new GridLayout (4,4); botoes.setLayout (layoutBotoes); botoes.add botoes.add botoes.add botoes.add botoes.add (this.botao7); (this.botao8); (this.botao9); (this.botaoSoma); (this.botao4);

botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add botoes.add

(this.botao5); (this.botao6); (this.botaoSubt); (this.botao1); (this.botao2); (this.botao3); (this.botaoMult); (this.botao0); (this.botaoRstd); (this.botaoLimp); (this.botaoDivi);

this.add ("North", this.visor); this.add ("Center", botoes); this.botao0.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('0'); } } ); this.botao1.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('1'); } } );

&& && && && && &&

&& && && && && &&

this.botao2.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 && evt.getClickCount () == 1 && !evt.isAltDown () &&

!evt.isAltGraphDown !evt.isControlDown !evt.isMetaDown !evt.isShiftDown trateClickEmDigito } } );

() () () ()) ('2');

&& && &&

this.botao3.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('3'); } } ); this.botao4.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('4'); } } ); this.botao5.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('5'); }

&& && && && && &&

&& && && && && &&

&& && && && && &&

} ); this.botao6.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('6'); } } ); this.botao7.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('7'); } } ); this.botao8.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('8'); } } ); this.botao9.addMouseListener ( new MouseAdapter ()

&& && && && && &&

&& && && && && &&

&& && && && && &&

{ public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmDigito ('9'); } } ); this.botaoSoma.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmOperacao ('+'); } } ); this.botaoSubt.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmOperacao ('-'); } } ); && && && && && &&

&& && && && && &&

&& && && && && &&

this.botaoMult.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 && evt.getClickCount () == 1 && !evt.isAltDown () &&

!evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmOperacao ('*'); } } ); this.botaoDivi.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmOperacao ('/'); } } ); this.botaoRstd.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmResultado (); } } ); this.botaoLimp.addMouseListener ( new MouseAdapter () { public void mouseClicked (MouseEvent evt) { if (evt.getButton () == MouseEvent.BUTTON1 evt.getClickCount () == 1 !evt.isAltDown () !evt.isAltGraphDown () !evt.isControlDown () !evt.isMetaDown () !evt.isShiftDown ()) trateClickEmLimpar (); }

&& && &&

&& && && && && &&

&& && && && && &&

&& && && && && &&

} ); this.addWindowListener ( new WindowAdapter () { public void windowClosing (WindowEvent evt) { trateFechamentoDaJanela (); } } ); this.setVisible (true); } }

Vous aimerez peut-être aussi