尽可能每行都解释一下,偶不懂啦:importjava.awt.Component;importjava.awt.GridBagConstraints;importjava.awt.GridBagLayout;importjava.awt.Insets;importjava.awt.event.ActionE...
尽可能每行都解释一下,偶不懂啦:
import java.awt.Component;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class Calculator extends JFrame implements ActionListener {
private boolean dotExist, operated, equaled;
private double storedNumber;
private char lastOperator;
private JTextField operation;
private JButton dot, plus, minus, multi, div, sqrt, equal, changePN, clear;
private JButton[] numbers;
public Calculator() {
setTitle("Calculator");
dotExist = false;
operated = false;
equaled = false;
storedNumber = 0;
lastOperator = '?';
operation = new JTextField("0");
operation.setEditable(false);
numbers = new JButton[10];
for (int i = 0; i < 10; i++)
numbers[i] = new JButton("" + i);
dot = new JButton(".");
plus = new JButton("+");
minus = new JButton("-");
multi = new JButton("*");
div = new JButton("/");
sqrt = new JButton("√");
equal = new JButton("=");
changePN = new JButton("±");
clear = new JButton("AC");
GridBagLayout layout = new GridBagLayout();
getContentPane().setLayout(layout);
addComponent(layout, operation, 0, 0, 4, 1);
addComponent(layout, numbers[1], 1, 0, 1, 1);
addComponent(layout, numbers[2], 1, 1, 1, 1);
addComponent(layout, numbers[3], 1, 2, 1, 1);
addComponent(layout, numbers[4], 2, 0, 1, 1);
addComponent(layout, numbers[5], 2, 1, 1, 1);
addComponent(layout, numbers[6], 2, 2, 1, 1);
addComponent(layout, numbers[7], 3, 0, 1, 1);
addComponent(layout, numbers[8], 3, 1, 1, 1);
addComponent(layout, numbers[9], 3, 2, 1, 1);
addComponent(layout, dot, 4, 0, 1, 1);
addComponent(layout, numbers[0], 4, 1, 1, 1);
addComponent(layout, sqrt, 3, 4, 1, 1);
addComponent(layout, plus, 1, 3, 1, 1);
addComponent(layout, minus, 2, 3, 1, 1);
addComponent(layout, multi, 1, 4, 1, 1);
addComponent(layout, div, 2, 4, 1, 1);
addComponent(layout, equal, 4, 2, 3, 1);
addComponent(layout, changePN, 3, 3, 1, 1);
addComponent(layout, clear, 0, 4, 1, 1);
}
展开