我尝试使用以下代码创建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添加这两个整数。有人能帮我吗?非常感谢。 :)
答案 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 Spinners和How 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();
}
}
});