好的,这是我的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);
}
}