Ajuda com JButton

4 respostas
D

Ola sou novo aqui

tenho uma duvida.
quero fazer um programa que calcula medias do aluno
sao 4 notas e devem ser divididas por 4
esse procedimento tem q ser feito em um botao usando o JButton
eu ja fiz o botao mas nao sei como fazer o calculo dentro do botao vejam o codigo.

//dentro da classe construtora

btcalcular.addActionListener(ActionListner);

btlinpar.addActionListener(ActionListener);

}

//inicio de nova classe

private class TratadorDeEventos implements ActionListener {
public void actionPerformed(ActionEvent e){
        double media;
        if (e.getSouser() == btcalcular) 
        media = (tftnota1+tftnota2+tftnota3+tftnota4)/4;
                  media = Double.parseDouble(JOptionPane.showMessageDialog(null,"MEDIA É"));
        else
}
}

4 Respostas

ViniGodoy

Olá, bem-vindo ao fórum.

Em primeiro lugar, sempre que postar códigos, use a tag code:
http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Em segundo, leia com atenção a descrição dos fóruns. Sua dúvida se encaixa melhor no fórum de interface gráfica, e não de Java Avançado.

Finalmente, para calcular você deve associar a classe que vc criou, filha de ActionListener, ao botão. No caso, como ela chama-se TratadorEventos, o código fica assim:

P
Ola , tu quer que ao clicar no teu botão seja realizado o calculo? se sim é so fazer o seguinte:
botao.addActionListener (new ActionListener (){   
			public void actionPerformed (ActionEvent e){  
				try{
					if(botao==e.getSource())
					{
						media = (tftnota1+tftnota2+tftnota3+tftnota4)/4; 
media = Double.parseDouble(JOptionPane.showMessageDialog(null,"MEDIA É")); 
					}
else
{
}
				}
				catch(Exception ex)
				{
					JOptionPane.showMessageDialog(null, "Erro");
					ex.printStackTrace();

				}

			}});
é isso?acho que tu não precisa criar uma classe só para fazer isso tu pode criar um método para fazer o calculo na mesma classe e chama-lo dentro do botão :D espero que te ajude!
D
eu fiz assim e da erro
private class TratadorDeEventos implements ActionListener { 
       double media;
            public void actionPerformed (ActionEvent e){ 
            btcalcular.addActionListener (new ActionListener());     
               
                try{  
                    if(btcalcular==e.getSource()) {  
                        media = (tftnota1+tftnota2+tftnota3+tftnota4)/4;  
                        
    media = Double.parseDouble(JOptionPane.showMessageDialog(null,media+"MEDIA É"));   
                    }  
else  

                }  
                catch(Exception ex)  
                {  
                    JOptionPane.showMessageDialog(null, "Erro");  
                    ex.printStackTrace();  
  
                     }  
              }
        }
}
P
Tratador de eventos é sua classe privada que será a ação do botão certo? então...
private class TratadorDeEventos implements ActionListener {   
       double media;  
            public void actionPerformed (ActionEvent e){  
                try{    
                        media = (tftnota1+tftnota2+tftnota3+tftnota4)/4;                    
    media = Double.parseDouble(JOptionPane.showMessageDialog(null,media+"MEDIA É"));     
                    }    
else    
  
                }    
                catch(Exception ex)    
                {    
                    JOptionPane.showMessageDialog(null, "Erro");    
                    ex.printStackTrace();    
    
                     }    
              }  
        }  
}
Ai la na classe onde tu vai criar o botão e usar esta ação faz assim:
public class ClasseOndeVcAddOBotao {
JButton   btcalcular;

public ClasseOndeVcAddOBotao()
{
JButton   btcalcular=new JButton("Calcular");
  btcalcular.setBounds(20,90,30,25);
btCalcular.addActionListener(this);

  btcalcular.addActionListener (new TratadorDeEventos ());    


}
espero que te ajude!
Criado 6 de julho de 2011
Ultima resposta 6 de jul. de 2011
Respostas 4
Participantes 3