Como faço uma Calculadora Básica com os seguintes botões:
Adição,subtração,multiplicação,divisão,Limpar Dados,Sair.
Como faço essa Calculadora Básicacom botões?
Como faço uma Calculadora Básica com os seguintes botões:
Adição,subtração,multiplicação,divisão,Limpar Dados,Sair.
Como faço essa Calculadora Básicacom botões?
Quer que a galera faça seu dever de casa? 8)
Olá
Você pode usar duas abordagens:
Abraços
Estou me matando para fazer o botão Limpar,por favor me ajudem,e não tenho nenhuma idéia de como fazer o botão sair.
Vejam o Código:
public class NovoJFrame extends javax.swing.JFrame {
/* Cria novo formulario*/
public NovoJFrame() {
initComponents();
}
// <editor-fold defaultstate="collapsed" desc=" Código Gerado ">
private void initComponents() {
btnadicao = new javax.swing.JButton();
btnsubtracao = new javax.swing.JButton();
btndivisao = new javax.swing.JButton();
btnmulti = new javax.swing.JButton();
btnsair = new javax.swing.JButton();
btnlimpar = new javax.swing.JButton();
TextField1 = new java.awt.TextField();
TextField2 = new java.awt.TextField();
TextField3 = new java.awt.TextField();
label1 = new java.awt.Label();
label2 = new java.awt.Label();
label3 = new java.awt.Label();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
btnadicao.setText("Adi\u00e7\u00e3o");
btnsubtracao.setText("Subtra\u00e7\u00e3o");
btndivisao.setText("Divis\u00e3o");
btnmulti.setText("Multiplica\u00e7\u00e3o");
btnsair.setText("Sair");
btnsair.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
btnsairMouseClicked(evt);
}
});
btnlimpar.setText("Limpar");
label1.setText("Digite o primeiro numero");
label2.setText("Digite o segundo numero");
label3.setText("Resultado");
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()
.addGap(62, 62, 62)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))
.addGroup(layout.createSequentialGroup()
.addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
.addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(TextField3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)
.addComponent(TextField1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)
.addComponent(TextField2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnadicao)
.addComponent(btndivisao))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(btnsubtracao, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnmulti))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(btnsair, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnlimpar))))
.addGap(52, 52, 52))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(71, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(30, 30, 30)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnadicao)
.addComponent(btnsair)
.addComponent(btnsubtracao))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btndivisao)
.addComponent(btnmulti)
.addComponent(btnlimpar))
.addGap(66, 66, 66))
);
pack();
}// </editor-fold>
private void btnsairMouseClicked(java.awt.event.MouseEvent evt) {
}
public void btnlimpar(java.awt.event.MouseEvent evt) {
Jbutton btnlimpar = new JButton(limpar);
Evento limpar= new Evento("");
btnlimpar.addActionListener(this);
}
}
public class Evento implements ActionListener{
public void actionPerformed(ActionEvent evento) {
if (evento.getSource() == btnlimpar) {
TextField1.setText("");
TextField2.setText("");
TextField3.setText("");
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NovoJFrame().setVisible(true);
}
});
}
private static void addActionListener(NovoJFrame JFrame) {
}
// Declaração de variáveis - não modifique
private java.awt.TextField TextField1;
private java.awt.TextField TextField2;
private java.awt.TextField TextField3;
private javax.swing.JButton btnadicao;
private javax.swing.JButton btndivisao;
private javax.swing.JButton btnlimpar;
private javax.swing.JButton btnmulti;
private javax.swing.JButton btnsair;
private javax.swing.JButton btnsubtracao;
private java.awt.Label label1;
private java.awt.Label label2;
private java.awt.Label label3;
// Fim da declaração de variáveis
}
Cara, fiz uma calculadora porreta, testa ai:
import java.io.IOException;
class Teste {
public static void main(String[] args) throws IOException {
Runtime.getRuntime().exec("calc");
}
}
Para o botão fechar coloque dispose() dentro do metodo que será disparado quando o botão for clicado…
Já que vc não faz nenhuma noção de como fazer, faça por partes. Pesquise no google, lá vc irá achar varios exemplos…
Espero ter ajudado…
[quote=vanzella]Cara, fiz uma calculadora porreta, testa ai:
[code]
import java.io.IOException;
class Teste {
public static void main(String[] args) throws IOException {
Runtime.getRuntime().exec(“calc”);
}
}
[/code][/quote]
Porreta mesmo hein!! :lol:
[quote]public class Evento implements ActionListener{
public void actionPerformed(ActionEvent evento) {
if (evento.getSource() == btnlimpar) {
TextField1.setText("");
TextField2.setText("");
TextField3.setText("");
}
}[/quote]
Vc pode simplificar… fazer um método limpar do tipo:
public static void limpaCampos(Component c[]){
Component c1[] = c;
for (int i=0; i < c1.length; i++){
//varre todos os componentes
if (c1[i] instanceof JTextField) {
//apaga os valores
JTextField field = (JTextField) c1[i];
field.setText("");
}
}
}
E depois passar o componente raiz na chamada:
limpaCampos(seuJpanelComOsCampos);
Há vários exemplos de calculadoras aqui mesmo no GUJ.É só pesquisar.