Introdução
Java é uma ótima linguagem orientada objeto para criar aplicações que fazem utilização de interface gráfica, seja em desktop ou web.
Neste artigo será criado um aplicativo simples que tem a função de ser uma calculadora com uma interface gráfica utilizando Swing.
Pré-requisitos
Para criar a aplicação é necessário ter instalado em seu computador o seguinte programa.- NetBeans – É necessário que se tenha instalado uma IDE para facilitar o desenvolvimento do projeto. Para o artigo foi escolhido o NetBeans, pois acredito ser mais fácil criar telas utilizando Swing com o mesmo.
Criando um projeto
Para criar um projeto no NetBeans é bem simples, basta clicar em: Arquivo > Novo ProjetoFigura 1: Tela inicial do NetBeans
Após clicar no item “Novo Projeto”, será dada a opção para escolher o tipo de projeto escolha:
- Categorias: Java
- Projetos: Aplicação Java
Figura 2: Tela de escolha tipo projeto
Após fazer as escolhas corretas clique em Próximo para ir a nova tela.
Na tela a seguir é necessário informar o nome do projeto, neste caso criei o projeto com nome de CalculadoraSwing.
Figura 3: Adição de nome ao projeto
Após criar o projeto é necessário criar uma classe que será responsável por realizar todos o cálculos que serão fornecidos pelo usuário através da tela, foi criada classe Calculos.java para realizar essa função.
Para criar uma classe no NetBeans, basta clicar no projeto com o botão direito e escolher a opção: Novo > Classe Java
Figura 4: Tela para criação de uma nova classe
Abaixo é possível ver o conteúdo da classe Calculo.java
Listagem 1: Classe Calculo.java
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package calculadoraswing; import java.util.ArrayList; import java.util.List; /** * * @author Robson Fernando Gomes */ public class Calculos { public static void main(String args[]) { Calculos c=new Calculos(); System.out.println(">>>>"+c.calculadora("5/5")); } public String calculadora(String expressao) { String resultado; List List listaNumeros = obterNumeros(expressao); listaOperadores = obterOperadores(expressao); resultado = calcularValor(listaNumeros, listaOperadores); return resultado; } private String calcularValor(List String resultado = ""; double total = 0.0; int j=0; for (int i = 0; i < listaNumeros.size()-1; i++) { if ( total==0.0) { double numero1 = listaNumeros.get(i).doubleValue(); double numero2 = listaNumeros.get(i + 1).doubleValue(); char operador = listaOperadores.get(i).charValue(); total = executarOperacao(numero1, operador, numero2); } else if (total>0.0) { double numero2 = listaNumeros.get(i).doubleValue(); char operador = listaOperadores.get(j).charValue(); total = executarOperacao(total, operador, numero2); j++; } } resultado = ""+total; return resultado; } private double executarOperacao(double numero1, char operador, double numero2) { double resultado = 0.0; if (operador == '+') { resultado = numero1 + numero2; } else if (operador == '-') { resultado = numero1 - numero2; } else if (operador == '/') { resultado = numero1 / numero2; } else if (operador == '*') { resultado = numero1 * numero2; } return resultado; } private List List String numeroEmString = ""; for (int i = 0; i < expressao.length(); i++) { if (isOperador(expressao.charAt(i))) { Double numero = Double.valueOf(numeroEmString); listaNumeros.add(numero); numeroEmString = ""; } else { numeroEmString = numeroEmString.concat("" + expressao.charAt(i)); } } if(!numeroEmString.isEmpty()) { Double numero = Double.valueOf(numeroEmString); listaNumeros.add(numero); } return listaNumeros; } private List List for (int i = 0; i < expressao.length(); i++) { if (isOperador(expressao.charAt(i))) { listaOperadores.add(new Character(expressao.charAt(i))); } } return listaOperadores; } private boolean isOperador(char caracter) { boolean isOperador = false; if (caracter == '-' || caracter == '+' || caracter == '/' || caracter == '*') { isOperador = true; } return isOperador; } } |
Figura 5: Classe Calculo.java vista no NetBeans
O próximo passo é criar a classe responsável pela interface, será criada uma classe chamada TelaCalculadora.class que terá como classe mãe a classe JFrame, que e responsável pela criação de uma tela em Swing.
Para criar uma classe do tipo JFrame, basta clicar no pacote no qual será criads e clicar em: Novo > Form JFrame.
Figura 6: Tela para criação de um Form JFrame
Abaixo é possível ver a tela recém-criada pronta para edição.
Figura 7: Classe TelaCalculadora.java
Para modificar a tela é necessário clicar nos itens da aba paleta e jogar na tela em si.
Figura 8: Aba Paleta
Inicialmente é necessário adicionar um “Painel” a nossa tela basta clicar no mesmo na aba “Paleta” e arrastar até a tela do programa.
Figura 9: Painel arrastado para a classe TelaCalculadora.java
Agora basta direcionar o painel dentro da tela.
O próximo passo é adicionar um objeto do tipo “Painel de Texto”, como é possível ver abaixo:
Figura 10: Adição do item Painel de Texto
Agora altere o nome da variável do item Painel de texto que fora adicionado para “visorCalculadora”. Para alterar o nome da variável basta clicar com o botão direito em cima do item que se deseja alterar e escolher a opção “Alterar Nome de Variável...”, abaixo é possível o momento em que se está alterando o nome da variável do item.
Figura 11: Alteração do nome de variável
Após adicionar o visor, é necessário adicionar os botões Pra adicionar o botão escolha o item “Botão” na aba Paleta.
Figura 12: Adição de um item Botão a tela da calculadora
Agora que o botão foi adicionado é necessário alterar o nome da variável do mesmo, assim como foi feito no item referente ao visor, altere o nome da variável para botaoCE.
Agora também é necessário alterar o texto do botão, Para alterar o texto do item, clique com o botão direito sobre ele e escolha a opção “Editar Texto”.
Figura 13: Alteração do texto contido no botão
Essa primeira tecla será o botão CE, que será utilizado para limpar o visor.
Figura 14: Imagem do primeiro botão na calculadora
Agora é necessário atribuir uma ação ao botão para quando o mesmo for clicado. Para adicionar um evento a um determinado item basta clicar com o botão direito sobre o item e escolher as opções: Eventos > Mouse > mouseClicked.
Logo que for adicionada essa ação, a tela será direcionada para código fonte.
Figura 15: Imagem do código fonte da TelaCalculadora.java
Para voltar à tela de edição gráfica basta clicar no item “Projeto” que fica ao lado do item selecionado “Código-Fonte”.
Agora será necessário seguir esse processo para todos os botões da calculadora.
Abaixo é possível ver como ficará a tela neste exemplo:
Figura 16: Imagem da TelaCalculadora.java após a inserção dos botões
O próximo passo é fazer com que seja exibido no visor o valor referente à tecla pressionada. Para programar os botões é necessário editar o código-fonte da tela, para isso é preciso clicar no botão Código-Fonte.
Um exemplo de código que faz alteração no visor quando algum botão é apertado pode ser visto abaixo:
Listagem 2: Exemplo de código para alteração do valor do visor.
private void botao3MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "3" ); } |
Figura 17: Código fonte da classe TelaCalculadora.java
Abaixo é possível ver o trecho código-fonte da classe TelaCalculadora.
Listagem 3: Código fonte da classe TelaCalculadora.java.
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package calculadoraswing; /** * * @author mago */ public class TelaCalculadora extends javax.swing.JFrame { /** * Creates new form TelaCalculadora */ public TelaCalculadora() { initComponents(); } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // private void initComponents() { jPanel1 = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); visorCalculador = new javax.swing.JTextPane(); botaoCE = new javax.swing.JButton(); botao7 = new javax.swing.JButton(); botao8 = new javax.swing.JButton(); botao9 = new javax.swing.JButton(); botao5 = new javax.swing.JButton(); botao6 = new javax.swing.JButton(); botao4 = new javax.swing.JButton(); botao1 = new javax.swing.JButton(); botao2 = new javax.swing.JButton(); botao3 = new javax.swing.JButton(); botao0 = new javax.swing.JButton(); botaoVezes = new javax.swing.JButton(); botaoDiv = new javax.swing.JButton(); botaoMenos = new javax.swing.JButton(); botaoMais = new javax.swing.JButton(); botaoIgual = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jScrollPane1.setViewportView(visorCalculador); botaoCE.setText("CE"); botaoCE.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoCEMouseClicked(evt); } }); botao7.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao7.setText("7"); botao7.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao7MouseClicked(evt); } }); botao8.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao8.setText("8"); botao8.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao8MouseClicked(evt); } }); botao9.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao9.setText("9"); botao9.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao9MouseClicked(evt); } }); botao5.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao5.setText("5"); botao5.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao5MouseClicked(evt); } }); botao6.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao6.setText("6"); botao6.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao6MouseClicked(evt); } }); botao4.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao4.setText("4"); botao4.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao4MouseClicked(evt); } }); botao1.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao1.setText("1"); botao1.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao1MouseClicked(evt); } }); botao2.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao2.setText("2"); botao2.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao2MouseClicked(evt); } }); botao3.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao3.setText("3"); botao3.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao3MouseClicked(evt); } }); botao0.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botao0.setText("0"); botao0.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botao0MouseClicked(evt); } }); botaoVezes.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botaoVezes.setText("*"); botaoVezes.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoVezesMouseClicked(evt); } }); botaoDiv.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botaoDiv.setText("/"); botaoDiv.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoDivMouseClicked(evt); } }); botaoMenos.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botaoMenos.setText("-"); botaoMenos.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoMenosMouseClicked(evt); } }); botaoMais.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N botaoMais.setText("+"); botaoMais.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoMaisMouseClicked(evt); } }); botaoIgual.setText("="); botaoIgual.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { botaoIgualMouseClicked(evt); } }); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 218, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(0, 0, Short.MAX_VALUE)) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(botaoCE, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(26, 26, 26) .addComponent(botao0, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup() .addComponent(botao1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(botao2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(botao7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(botao4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(botao5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(botao8, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(botao3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(botaoMais, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addComponent(botaoIgual, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(botao6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(botaoMenos, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addComponent(botaoVezes, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addComponent(botao9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(botaoDiv, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) .addGap(2, 2, 2))))) .addContainerGap()) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(44, 44, 44) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(24, 24, 24) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(botaoVezes, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botaoCE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE, false) .addComponent(botao7, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(botao8, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(botao9, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botaoDiv, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(botao5, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(botao6, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(botao4, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(botaoMenos, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(botao1, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botao2, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botao3, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botaoMais, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(botao0, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(botaoIgual, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE))) ); jPanel1Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {botao7, botao8, botao9}); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap() .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(31, Short.MAX_VALUE)) ); pack(); }// private void botaoCEMouseClicked(java.awt.event.MouseEvent evt) { visorCalculador.setText(""); } private void botaoVezesMouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "*"); } private void botao7MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "7"); } private void botao8MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "8"); // TODO add your handling code here: } private void botao9MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "9"); // TODO add your handling code here: } private void botaoDivMouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "/"); // TODO add your handling code here: } private void botao4MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "4"); // TODO add your handling code here: } private void botao5MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "5"); // TODO add your handling code here: } private void botao6MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "6"); // TODO add your handling code here: } private void botaoMenosMouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "-"); // TODO add your handling code here: } private void botao1MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "1"); // TODO add your handling code here: } private void botao2MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "2"); // TODO add your handling code here: } private void botao3MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "3"); // TODO add your handling code here: } private void botaoMaisMouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "+"); // TODO add your handling code here: } private void botao0MouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); visorCalculador.setText(valor + "0"); // TODO add your handling code here: } private void botaoIgualMouseClicked(java.awt.event.MouseEvent evt) { String valor = visorCalculador.getText(); System.out.println(">>>"+valor); Calculos calculos = new Calculos(); String resultado = calculos.calculadora(valor); visorCalculador.setText(resultado); // TODO add your handling code here: } /** * @param args the command line arguments */ public static void main(String args[]) { /* Set the Nimbus look and feel */ // /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } // /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new TelaCalculadora().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JButton botao0; private javax.swing.JButton botao1; private javax.swing.JButton botao2; private javax.swing.JButton botao3; private javax.swing.JButton botao4; private javax.swing.JButton botao5; private javax.swing.JButton botao6; private javax.swing.JButton botao7; private javax.swing.JButton botao8; private javax.swing.JButton botao9; private javax.swing.JButton botaoCE; private javax.swing.JButton botaoDiv; private javax.swing.JButton botaoIgual; private javax.swing.JButton botaoMais; private javax.swing.JButton botaoMenos; private javax.swing.JButton botaoVezes; private javax.swing.JPanel jPanel1; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTextPane visorCalculador; // End of variables declaration } |
gostei do exercicios e que vou aprender o que foi mostrado aqui.
ResponderExcluir