Java Basico - Problema no botao "ok"

2 respostas
R

Pessoal alguem pode me ajudar... sou um novato nesse assunto... eu nao consigo executar o programa... digito o primeiro numero e clico no botao "Ok" mais ele nao esta funcionando... falta algo...
por favor alguem pode me ajudar?

import java.awt.Container;
import java.awt.Event;
import java.awt.FlowLayout;
import java.awt.TextField;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

/**
 *
 * @author Rafael
 */
public class Terceira_aula extends JFrame {

    JTextField numero1 = new JTextField(10);
    JTextField numero2 = new JTextField(10);
    JLabel rotulo1 = new JLabel("Didite o Primeiro Numero:");
    JLabel rotulo2 = new JLabel("Digite o Segundo Numero:");
    JButton btn = new JButton("Ok");

    public Terceira_aula() {
        Container tela = getContentPane();                      // instanciado coutainer que agrupara os objetos
        tela.setLayout(null);                                   // ela nao formata, o usuario programador adiministra as posição no Painel

        // instanciando e colocando nome 


        tela.add(rotulo1);
        rotulo1.setBounds(10, 10, 200, 20);

        tela.add(numero1);
        numero1.setBounds(170, 10, 50, 20);

        tela.add(rotulo2);
        rotulo2.setBounds(10, 40, 200, 20);

        tela.add(numero2);
        numero2.setBounds(170, 40, 50, 20);

        tela.add(btn);
        btn.setBounds(85, 80, 100, 20);


        reshape(500, 300, 280, 300);
        setTitle("Terceira aula");
        setVisible(true);


    }

    public int fatorial(int primeiro) {
        int fat = 1;
        while (primeiro > 1) {
            fat *= primeiro;
            primeiro--;
        }
        return fat;
    }

    public boolean action(Event evt, Object componente) {

        if (componente.equals("Ok")) {


            int primeiro = Integer.parseInt(numero1.getText());
            //int segundo = Integer.parseInt(numero2.getText());

            int resultado = fatorial(primeiro);
            numero1.setText("" + resultado);
        }
        return true;
    }

    public static void main(String[] args) {

        new Terceira_aula();

    }
}

2 Respostas

R

você tem que adicionar o evento ao botão.

//Adiciona um evento ao JButton
btn.addActionListener(this);

cara se não estou enganado este método action não funciona você teria que utilizar outro método para ouvir o evento do botão

//Método da interface ActionListener
public void actionPerformed(ActionEvent ae){
..
//aqui vai sua implementação do seu atual métdo action.

}
R

OKok Obrigado…

Criado 31 de agosto de 2012
Ultima resposta 4 de set. de 2012
Respostas 2
Participantes 2