Erro de Calculadora

9 respostas
F

package CalculadoraDesafio;

import java.awt.Button;

import java.awt.Container;

import java.awt.Event;

import java.awt.Font;

import java.awt.TextField;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import java.awt.event.WindowEvent;

import java.awt.event.WindowListener;
import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class CalculadoraDesafio extends JFrame implements WindowListener, ActionListener, KeyListener
{

/**
 * 
 */
private static final long serialVersionUID = 1L;
TextField txtResult;
boolean new_entry;
char teste;
double arg1, arg2;
float j,i,n;
public CalculadoraDesafio (){

super(Calculadora Java);

Container c = getContentPane();

setLayout(null);

super.setIconImage((new ImageIcon (src/calculadora-java.png).getImage()));

JLabel campo = new JLabel();

campo.setBounds(10,0,210,80);

campo.setFont(new Font(Times New Roman,Font.PLAIN,12));

c.add(campo);
txtResult = new TextField("0");
txtResult.setBounds(10,100,200,25);
txtResult.setText(new Float(n).toString());
add(txtResult);


JButton CE =  new JButton ("CE");
JButton Editar = new JButton ("Editar");
JButton Exibir = new JButton ("Exibir");
JButton Ajuda = new JButton ("Ajuda");
JButton Soma = new JButton ("+");
JButton Sub = new JButton ("-");
JButton Mul = new JButton ("x");
JButton Div = new JButton ("/");
JButton botaoc = new JButton("c");
JButton botao0 = new JButton ("0");
JButton botao1 = new JButton ("1");
JButton botao2 = new JButton ("2");
JButton botao3 = new JButton ("3");
JButton botao4 = new JButton ("4");
JButton botao5 = new JButton ("5");
JButton botao6 = new JButton ("6");
JButton botao7 = new JButton ("7");
JButton botao8 = new JButton ("8");
JButton botao9 = new JButton ("9");
JButton igual = new JButton("=");
JButton virgula = new JButton(",");
JButton porcentagem = new JButton("%");



Soma.setBounds(160,130,50,30); 
Sub.setBounds(160,160,50,30); 
Mul.setBounds(160,190,50,30);
Div.setBounds(110,220,50,30); 
botao0.setBounds(10,220,50,30);
botaoc.setBounds(60,220,50,30);
botao2.setBounds(60,190,50,30);
botao1.setBounds(10,190,50,30);
botao3.setBounds(110,190,50,30);
botao4.setBounds(10,160,50,30 );
botao5.setBounds(60,160,50,30 );
botao6.setBounds(110,160,50,30 );
botao7.setBounds(10,130,50,30);
botao8.setBounds(60,130,50,30);
botao9.setBounds(110,130,50,30);
Ajuda.setBounds(16,10,70,20);
Exibir.setBounds(76,10,70,20);
Editar.setBounds(136,10,70,20);
virgula.setBounds(60,250,50,30);
porcentagem.setBounds(110,250,50,30);
igual.setBounds(160,220,50,60);
CE.setBounds(10,250,50,30);

c.add(botao0);
c.add(botao1);
c.add(botao2);
c.add(botao3);
c.add(botao4);
c.add(botao5);
c.add(botao6);
c.add(botao7);
c.add(botao8);
c.add(botao9);
c.add(botaoc);
c.add(Soma);
c.add(Sub);
c.add(Mul);
c.add(Div);
c.add(igual);
c.add(Ajuda);
c.add(Exibir);
c.add(Editar);
c.add(virgula);
c.add(porcentagem);
c.add(CE);
}

public boolean action (Event evt, Object arg)

{

if(evt.target instanceof Button)

{

arg1=arg2=0.0;

char keypress=((String) arg).charAt(0);

if((keypress==/)||(keypress==<em>)||(keypress==+)||(keypress==-))

{

teste=keypress;

System.out.println(teste);

}

if(((keypress >=0)&& (keypress <=9))|| (keypress==.))

{

if(new_entry)

{

if((teste==/)||(teste==</em>)||(teste==+)||(teste==-))

{

txtResult.setText((String) arg);

}

else

{

txtResult.setText((String) arg);

}

new_entry=false;

}

else

{

if((teste==/)||(teste==*)||(teste==+)||(teste==-))

{

txtResult.setText(txtResult.getText() + ((String) arg));

}

else

{

txtResult.setText(txtResult.getText() + ((String) arg));

}

}

}

if(arg.equals("="))

{

float i= Float.valueOf(txtResult.getText()).floatValue();

float j= Float.valueOf(txtResult.getText()).floatValue();

float n;
if(teste=='+')
    {
      n=i+j;
      
      txtResult.setText(new Float(n).toString());
    }
  else if (teste=='-')
    {
      n=i-j;
      txtResult.setText(new Float(n).toString());
    }
  else if (teste=='*')
    {
      n=i*j;
      
      txtResult.setText(new Float(n).toString());
    }
  else if (teste=='/')
    {
      n=i/j;
      
      txtResult.setText(new Float(n).toString());
    }
}
 else if (arg.equals("Reset"))
	 
  {
  keypress=((String) arg).charAt(0);
  txtResult.setText("");
  teste=keypress;
  txtResult.setText("");
  
  }

}
return new_entry;

}

public static void main(String args[]){

CalculadoraDesafio obj = new CalculadoraDesafio();

}

setSize( 250, 400 );
    setVisible( true );
    
}  // o erro esta ai nesses dois casos

@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub

}

<a class="mention" href="/u/override">@Override</a>

public void windowClosed(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void windowClosing(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void windowDeactivated(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void windowDeiconified(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void windowIconified(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void windowOpened(WindowEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void keyPressed(KeyEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void keyReleased(KeyEvent e) {

// TODO Auto-generated method stub
}

<a class="mention" href="/u/override">@Override</a>

public void keyTyped(KeyEvent e) {

// TODO Auto-generated method stub

}
}

Alguem poderia me ajudar a concertar esse erro ja quebrei a cabeça e nada. obg [quote]

9 Respostas

thiago.correa

Opa, qual é o erro?!

F
setSize( 250, 400 );
    setVisible( true );
    
}

[quote] esse e o erro

thiago.correa

Bom, seu post não ajudou muito, mas copiei o código e vi que os métodos mencionados por você não estavam em um lugar apropriados (ou dentro do construtor, ou dentro de algum método) eu costumo colocá-los no método construtor por praticidade, eis como ficou o código

import java.awt.Button;
import java.awt.Container;
import java.awt.Event;
import java.awt.Font;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class CalculadoraDesafio extends JFrame implements WindowListener,
		ActionListener, KeyListener {

	/** 
* 
*/
	private static final long serialVersionUID = 1L;
	TextField txtResult;
	boolean new_entry;
	char teste;
	double arg1, arg2;
	float j, i, n;

	public CalculadoraDesafio() {
		super("Calculadora Java");
		Container c = getContentPane();
		setLayout(null);
		super.setIconImage((new ImageIcon("src/calculadora-java.png")
				.getImage()));
		JLabel campo = new JLabel();
		campo.setBounds(10, 0, 210, 80);
		campo.setFont(new Font("Times New Roman", Font.PLAIN, 12));
		c.add(campo);

		txtResult = new TextField("0");
		txtResult.setBounds(10, 100, 200, 25);
		txtResult.setText(new Float(n).toString());
		add(txtResult);

		JButton CE = new JButton("CE");
		JButton Editar = new JButton("Editar");
		JButton Exibir = new JButton("Exibir");
		JButton Ajuda = new JButton("Ajuda");
		JButton Soma = new JButton("+");
		JButton Sub = new JButton("-");
		JButton Mul = new JButton("x");
		JButton Div = new JButton("/");
		JButton botaoc = new JButton("c");
		JButton botao0 = new JButton("0");
		JButton botao1 = new JButton("1");
		JButton botao2 = new JButton("2");
		JButton botao3 = new JButton("3");
		JButton botao4 = new JButton("4");
		JButton botao5 = new JButton("5");
		JButton botao6 = new JButton("6");
		JButton botao7 = new JButton("7");
		JButton botao8 = new JButton("8");
		JButton botao9 = new JButton("9");
		JButton igual = new JButton("=");
		JButton virgula = new JButton(",");
		JButton porcentagem = new JButton("%");

		Soma.setBounds(160, 130, 50, 30);
		Sub.setBounds(160, 160, 50, 30);
		Mul.setBounds(160, 190, 50, 30);
		Div.setBounds(110, 220, 50, 30);
		botao0.setBounds(10, 220, 50, 30);
		botaoc.setBounds(60, 220, 50, 30);
		botao2.setBounds(60, 190, 50, 30);
		botao1.setBounds(10, 190, 50, 30);
		botao3.setBounds(110, 190, 50, 30);
		botao4.setBounds(10, 160, 50, 30);
		botao5.setBounds(60, 160, 50, 30);
		botao6.setBounds(110, 160, 50, 30);
		botao7.setBounds(10, 130, 50, 30);
		botao8.setBounds(60, 130, 50, 30);
		botao9.setBounds(110, 130, 50, 30);
		Ajuda.setBounds(16, 10, 70, 20);
		Exibir.setBounds(76, 10, 70, 20);
		Editar.setBounds(136, 10, 70, 20);
		virgula.setBounds(60, 250, 50, 30);
		porcentagem.setBounds(110, 250, 50, 30);
		igual.setBounds(160, 220, 50, 60);
		CE.setBounds(10, 250, 50, 30);

		c.add(botao0);
		c.add(botao1);
		c.add(botao2);
		c.add(botao3);
		c.add(botao4);
		c.add(botao5);
		c.add(botao6);
		c.add(botao7);
		c.add(botao8);
		c.add(botao9);
		c.add(botaoc);
		c.add(Soma);
		c.add(Sub);
		c.add(Mul);
		c.add(Div);
		c.add(igual);
		c.add(Ajuda);
		c.add(Exibir);
		c.add(Editar);
		c.add(virgula);
		c.add(porcentagem);
		c.add(CE);

		setSize(250, 400);
		setVisible(true);

	}

	public boolean action(Event evt, Object arg) {
		if (evt.target instanceof Button) {
			arg1 = arg2 = 0.0;
			char keypress = ((String) arg).charAt(0);
			if ((keypress == '/') || (keypress == '*') || (keypress == '+')
					|| (keypress == '-')) {
				teste = keypress;
				System.out.println(teste);
			}
			if (((keypress >= '0') && (keypress <= '9')) || (keypress == '.')) {
				if (new_entry) {
					if ((teste == '/') || (teste == '*') || (teste == '+')
							|| (teste == '-')) {
						txtResult.setText((String) arg);
					} else {
						txtResult.setText((String) arg);
					}
					new_entry = false;
				} else {
					if ((teste == '/') || (teste == '*') || (teste == '+')
							|| (teste == '-')) {
						txtResult.setText(txtResult.getText() + ((String) arg));
					} else {
						txtResult.setText(txtResult.getText() + ((String) arg));
					}
				}
			}
			if (arg.equals("=")) {
				float i = Float.valueOf(txtResult.getText()).floatValue();
				float j = Float.valueOf(txtResult.getText()).floatValue();
				float n;

				if (teste == '+') {
					n = i + j;

					txtResult.setText(new Float(n).toString());
				} else if (teste == '-') {
					n = i - j;
					txtResult.setText(new Float(n).toString());
				} else if (teste == '*') {
					n = i * j;

					txtResult.setText(new Float(n).toString());
				} else if (teste == '/') {
					n = i / j;

					txtResult.setText(new Float(n).toString());
				}
			} else if (arg.equals("Reset"))

			{
				keypress = ((String) arg).charAt(0);
				txtResult.setText("");
				teste = keypress;
				txtResult.setText("");

			}
		}
		return new_entry;

	}

	public static void main(String args[]) {
		CalculadoraDesafio obj = new CalculadoraDesafio();

	}

	public void windowActivated(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowClosed(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowClosing(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowDeactivated(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowDeiconified(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowIconified(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void windowOpened(WindowEvent e) {
		// TODO Auto-generated method stub

	}

	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub

	}

	public void keyPressed(KeyEvent e) {
		// TODO Auto-generated method stub

	}

	public void keyReleased(KeyEvent e) {
		// TODO Auto-generated method stub

	}

	public void keyTyped(KeyEvent e) {
		// TODO Auto-generated method stub

	}
}
F

ele copilou mais nao ta funcionando ou seja nao calcula. obg[quote]

thiago.correa

Sim, você deve implementar as ações dos botões senão ele não vai calcular mesmo :wink:

F

vou tertar [quote]

F

[quote]mais ja implementei os actionListens essa e a funçao do botao e nao da nada

ViniGodoy

Esse link também vai te interessar: http://www.guj.com.br/posts/list/140986.java

F

Tem que ser esse modelo mesmo, mais nao to conseguindo implementar as açoes de botao sempre da erro :shock:

Criado 19 de abril de 2010
Ultima resposta 19 de abr. de 2010
Respostas 9
Participantes 3