Evento do JButton(não realiza o evento)

2 respostas
G

Pessoal eu to fazendo um trabalho academico na parte de gui em Java. Só fiz o projeto tudo certinho… Eu consigo realizar as operaçoes nele feitas… Só que quando eu quero que o segundo botão funcione ele não roda! ja tentei colocar um if-else entre os dois botoes mas não da certo!!
Eis o codigo abaixo:

public void actionPerformed(ActionEvent e)
	{
	 
	 String a,b,c,ops;
	 int esc;
	 double x,y,z;
	
	 
	 
	 if(e.getSource()==btn1){
	 	
	    
	 	x = Double.parseDouble(T1.getText());
	 	y = Double.parseDouble(T2.getText());
	 	z = Double.parseDouble(T3.getText());
	 	
	 	ops = JOptionPane.showInputDialog("Entre com a opção desejada: ");
	    esc = Integer.parseInt(ops);
	    switch (esc) {
	    	case 1:
	    	       x = y - 459.67d * 5/9;
	    	       a = "" + x;
	    	       T4.setEditable(true);
	    	       T4.setText(a);
	    	break;
	    	case 2:
	    	       y = x * 5/9 - 459.67d;
	    	       b = "" + y;
	    	       T4.setEditable(true);
	    	       T4.setText(b);
	    	break;            
	    }
	    
	    if(e.getSource()==btn2){
	    	String[] opc = {"Yes","No","Cancel"};
	    	
	    	int es = JOptionPane.showOptionDialog(null,"Voce deseja apagar ?", "Borracha",0,
JOptionPane.INFORMATION_MESSAGE,null,opc,opc[0]);
            String o = (opc[es]);
            if(opc[es] == "Yes"){
            	T1.setText("");
            	T2.setText("");
            	T3.setText("");
            	T4.setText("");
            	T4.setEditable(false);
            }

	    }
	 	
	 	
	 }
	 
	 
	 }

Eu preciso que funcione os dois´… Alguem poderia me dizer onde esta o erro da logica ou sintaxe… Grato…

2 Respostas

BrunoBastosPJ

Opa gollun, existe uma boa prática de swing que é usar classes internas. Usando essas classes o código fica mais organizado e é muito mais fácil encontrar os problemas. Segue um exemplo de como funciona

public class Gui {
  ....

  JButton btn1 = new JButton("Button 1");
  btn1.addActionListener ( new ButtonOneListener() );
  
  ...

  class ButtonOneListener implements ActionListener {
  
       public void actionPerformed(ActionEvente e) {
              //O que esse botão faz
      }
   }
}
F

Não dá pra ter certeza porque vc só postou o código do método actionPerformed, mas será que vc não esqueceu de setar o ouvinte para btn2?

btn2.addActionListener(meuOuvinte);
Criado 13 de setembro de 2006
Ultima resposta 14 de set. de 2006
Respostas 2
Participantes 3