我需要从actionListener更改JTextField

时间:2013-10-19 14:25:21

标签: java swing jbutton actionlistener jtextfield

好的,这是我的java课程。 基本上我被要求做一个简单的计算器。 我已经弄清楚了布局。 但是,如果我点击添加按钮,我不知道如何从两个JTextField更新JTextField(答案文本字段)。

这是我的代码:

    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;


    public class Tarea implements ActionListener {

    public static void main(String[] args)
    {
        JFrame ventana = new JFrame("Tarea 01");            
        JPanel Numeros = new JPanel();
        Numeros.setLayout(new GridLayout(2,2));
        JLabel Numero1 = new JLabel("Numero 1:");
        JLabel Numero2 = new JLabel("Numero 2:");
        final JTextField Numero1txt = new JTextField(5);
        final JTextField Numero2txt = new JTextField(5);
        Numeros.add(Numero1);
        Numeros.add(Numero1txt);
        Numeros.add(Numero2);
        Numeros.add(Numero2txt);            
        final JButton Sumar = new JButton("Sumar");
        Sumar.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {    
                // Resultadotxt is outside scope (I think).
                //What I want to do:                                    //Resultadotxt.setText(Integer.getText(Numero1)+Integer.getText(Numero2));    
            }
        });
        JButton Restar = new JButton("Restar");
        JButton Multi = new JButton("Multiplicar");
        JButton Divi = new JButton("Division");
        JButton Raiz1 = new JButton("Raiz del 1ero");
        JButton Raiz2 = new JButton("Raiz del 2do");
        JButton Mayor = new JButton("Numero Mayor");
        JButton Limpia = new JButton("Limpiar numero");         
        JPanel buttons = new JPanel();
        buttons.setLayout(new GridLayout(2,4));
        buttons.add(Sumar);
        buttons.add(Restar);
        buttons.add(Multi);
        buttons.add(Divi);
        buttons.add(Raiz1);
        buttons.add(Raiz2);
        buttons.add(Mayor);
        buttons.add(Limpia);

        JPanel Resultados = new JPanel();
        JLabel Resultado = new JLabel("Resultado:");
        final JTextField Resultadotxt = new JTextField();
        Resultadotxt.setEditable(false);
        Resultados.add(Resultado);
        Resultados.add(Resultadotxt);

        JPanel window_layout = new JPanel();
        window_layout.setLayout(new BoxLayout(window_layout, BoxLayout.Y_AXIS));
        window_layout.add(Numeros);
        window_layout.add(buttons);
        window_layout.add(Resultados);

        ventana.add(window_layout);
        ventana.setSize(500, 500);
        ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        ventana.setVisible(true);           
    }
}

0 个答案:

没有答案