Ae galera to tentando construir uma calculadorazinha bem simples…
vo precisar da ajuda de vcs
primeiramente:
aqui eh o visor dela;
private String nomes[] = {“C”,"=",“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,"+","-","*","/"};
private JButton butoes[];
fiz essa clase interna:
que serveria pra tratar os eventos do click do mouse, queria que quando o usuario clicasse no botao da calculadora, ele enviasse a string para o visor .
private class eventoButao implements ActionListener
{
// trata evento dos Botoes
public void actionPerformed(ActionEvent e)
{
for ( int i = (nomes.length - 1); i >= 0; i-- )
{
if ( e.getSource() == butoes[i] )
{
valor = nomes[i];
visor.setText(valor);
}
else
visor.setText("");
}
}
}
Mas ela nao ta enviando ao visor os valores, como que eu faço isso em?
Cara tenho uma calculadora feita em casa, mas o codigo é grande e não da pra postar aqui…mas me mande um e-mail que te mandarei o codigo OK…
meu e-mail: marcosantonio.java@uol.com.br
Agradeço o interesse, mas estava parado e resolvir fazer essa calculadora pra mim voltar ao ritmo, prefiro construir e ver minhas falhas
vc esta inserindo os action listener nos botoes?
tipo
botao.addActionListener(eventoBotao);
?
i, nem me toquei dos actionlistener oh… vo ver como faco aqui
EDIT
o Ouvinte dos Eventos:
o tratamento agora:
private class EventoButao implements ActionListener
{
// trata evento dos Botoes
public void actionPerformed(ActionEvent e)
{
int ultimo = nomes.length -1;
for ( int i = ultimo; i >= 0; i-- )
{
if ( e.getSource() == butoes[0] )
[b]visor.setText("");[/b]
else if ( e.getSource() == butoes[i] )
valor = nomes[i];
visor.setText(valor);
}
}
}
agora to com um probleminha, o meu 1º evento visor.setText("");
nao ta funcionando, o restante ta OK a mandando para o JTextField normal, mas esse ae nao funciona.
o que sera?
E ae galera, ainda estou com o mesmo problema vo postar o codigo todo aqui pra vcs dar uma olhada… mas o topico anterior ja ta explicando ae.
package Action;
import java.awt.;
import java.awt.event. ;
import javax.swing.*;
/**
*/
public class ActionCalculadora extends JFrame {
private Double numero1, numero2, resultado;
private String nomes[] = {"C","=","0","1","2","3","4","5","6","7","8","9","+","-","*","/"};
private String valor;
private JButton butoes[];
private JPanel tecladoPanel, visorPanel;
private JTextField visor;
// ****************** CONSTRUINDO A GUI ********************************** //
/**
* Contrutor.
*/
public ActionCalculadora() {
super("Calculadora");
Container container = getContentPane();
butoes = new JButton[nomes.length];
EventoButao eventoButao = new EventoButao();
/*
* criando o teclado
* e os Butoes
*
*/
tecladoPanel = new JPanel();
tecladoPanel.setLayout(new GridLayout (4,4,1,1) );
for ( int i = (nomes.length - 1); i >= 0; i--)
{
butoes[i] = new JButton( nomes[i] );
tecladoPanel.add( butoes[i] );
butoes[i].addActionListener(eventoButao);
}
/*
* Criando o Visor da
* Calculadora
*/
visorPanel = new JPanel();
visor = new JTextField(15);
visor.setEditable(false);
visorPanel.add(visor);
/*
* adiciona os Paineis ao Container
*/
container.add(tecladoPanel,BorderLayout.SOUTH);
container.add(visorPanel,BorderLayout.NORTH);
// barra De Menus
MenuBar menuBar = new MenuBar();
// Menus
Menu menuPrincipal = new Menu();
Menu menuAjuda = new Menu();
// Itens
MenuItem itemSair = new MenuItem();
MenuItem itemSobre = new MenuItem();
// Colocando os Labels do Menus
menuPrincipal.setLabel("Menu");
itemSair.setLabel("Sair");
menuAjuda.setLabel("Ajuda");
itemSobre.setLabel("Sobre");
// Adicionando Evento ao Item Sair do Menu
itemSair.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
ActionCalculadora.this.windowClosed();
}
}
);
// adicionando o Menu Principal a Barra do Aplicativo
menuPrincipal.add(itemSair);
menuBar.add(menuPrincipal);
// adicionando o Menu Ajuda a Barra do Aplicativo
menuAjuda.add(itemSobre);
menuBar.add(menuAjuda);
setTitle("Calculadora");
setMenuBar(menuBar);
setSize(180, 186);
setVisible(true);
// Add window listener.
this.addWindowListener
(
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
ActionCalculadora.this.windowClosed();
}
}
);
}
// *********************** FIM DA GUI ************************************//
/**
* Metodo Fechando a Janela
*
*/
protected void windowClosed() {
// Sair do Aplicativo
System.exit(0);
}
// ****************** Tratamento de Eventos ******************** //
private class EventoButao implements ActionListener
{
// trata evento dos Botoes
public void actionPerformed(ActionEvent e)
{
int ultimo = nomes.length -1;
for ( int i = ultimo; i >= 0; i-- )
{
if ( e.getSource() == butoes[16] )
{
visor.setText("valor");
}
else if ( e.getSource() == butoes[i] )
valor = nomes[i];
visor.setText(valor);
}
}
}
// *************************************************************** //
/*
* Executando o aplicativo
*/
public static void main( String args[])
{
ActionCalculadora app = new ActionCalculadora();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
// ************ FIM DA EXECUCAO DO APLICATIVO ******************** //
}
conseguir colocando valor = “”; e setText(valor);