使用AWT添加2个整数

时间:2015-03-02 08:27:36

标签: java swing awt

我尝试使用以下代码创建Java AWT程序:

import javax.swing.*;
import java.awt.*;

public class Exer1 extends JFrame {

    public Exer1(){

        super ("Addition");
        JLabel add1 = new JLabel("Enter 1st Integer: ");
        JTextField jtf1 = new JTextField(10);
        JLabel add2 = new JLabel("Enter 2nd Integer: ");
        JTextField jtf2 = new JTextField(10);
        JButton calculate = new JButton("Calculate");
        FlowLayout flo = new FlowLayout();
        setLayout(flo);
        add(add1);
        add(jtf1);
        add(add2);
        add(jtf2);
        add(calculate);
        setSize(200,200);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);

    }

    public static void main(String[] a){
        Exer1 ex1 = new Exer1();
    }

}

我的问题是如何使用JTextField添加这两个整数。有人能帮我吗?非常感谢。 :)

3 个答案:

答案 0 :(得分:1)

通常,您应该为按钮上的点击事件创建一个事件监听器:Lesson: Writing Event Listeners。在该处理程序中,您将获取两个文本字段的内容,将它们转换为整数:

Integer i1 = Integer.valueOf(jtf1.getText());

然后你可以添加这两个整数并在另一个控件中显示它们或用它们做任何其他事情。

答案 1 :(得分:1)

How to Use Buttons, Check Boxes, and Radio Buttons开始 How to Write an Action Listeners

这将为您提供在用户按下按钮时能够分辨的信息。

JTextField#getText然后返回String。然后问题就变成了将String转换为int的问题,如果你花时间,有成千上万的例子证明如何实现这个

一旦您将String转换为int的奇怪之处,您可以查看执行自己验证的How to Use SpinnersHow to Use Formatted Text Fields已输入值

答案 2 :(得分:1)

您需要在JButton上使用ActionListener

然后你需要从int获得JTextField&#39},然后像下一个那样加分:

calculate.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            try {
                int i1 = Integer.valueOf(jtf1.getText());
                int i2 = Integer.valueOf(jtf2.getText());
                System.out.println("sum=" + (i1 + i2));
            } catch (Exception e1){
                e1.printStackTrace();
            }
        }
    });