输入数字后,敲回车开始自动计算
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class SimpleCalculator {
private JFrame f = new JFrame("Simple Calculator");
private JLabel num1 = new JLabel("Number1");
private JLabel num2 = new JLabel("Number2");
private JTextField input1 = new JTextField();
private JTextField input2 = new JTextField();
private JLabel sum = new JLabel("Sum");
private JTextField sumText = new JTextField();
public SimpleCalculator() {
sumText.setEditable(false);
input1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (input2.getText() == null || input2.getText().trim().equals("")) {
return;
}
if (input1.getText() != null && input2.getText() != null) {
double number1 = 0d, number2 = 0d;
try {
number1 = Double.parseDouble(input1.getText());
number2 = Double.parseDouble(input2.getText());
} catch (NumberFormatException nbFmtExp) {
JOptionPane.showMessageDialog(null, "Invalid input format, it must be numbers");
return;
}
sumText.setText(String.valueOf(number1 + number2));
}
}
});
input2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (input1.getText() == null
|| input1.getText().trim().equals("")) {
return;
}
if (input1.getText() != null && input2.getText() != null) {
double number1 = 0d, number2 = 0d;
try {
number1 = Double.parseDouble(input1.getText());
number2 = Double.parseDouble(input2.getText());
} catch (NumberFormatException nbFmtExp) {
JOptionPane.showMessageDialog(null,"Invalid input format, it must be numbers");
return;
}
sumText.setText(String.valueOf(number1 + number2));
}
}
});
f.setLayout(new GridLayout(3, 2));
f.add(num1);
f.add(input1);
f.add(num2);
f.add(input2);
f.add(sum);
f.add(sumText);
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.pack();
}
public static void main(String[] args) {
new SimpleCalculator();
}
}
温馨提示:内容为网友见解,仅供参考