Пример #1
0
  /** 初始化操作 添加按钮 */
  private void init() {
    addButton(panel1, "Backspace", new Clear(), Color.red);
    addButton(panel1, "CE", new Clear(), Color.red);
    addButton(panel1, "C", new Clear(), Color.red);
    addButton(panel2, "1/x", new Signs(), Color.magenta);
    addButton(panel2, "log", new Signs(), Color.magenta);
    addButton(panel2, "7", numActionListener, Color.blue);
    addButton(panel2, "8", numActionListener, Color.blue);
    addButton(panel2, "9", numActionListener, Color.blue);
    addButton(panel2, "÷", new Signs(), Color.red);
    addButton(panel2, "n!", new Signs(), Color.magenta);
    addButton(panel2, "sqrt", new Signs(), Color.magenta);
    addButton(panel2, "4", numActionListener, Color.blue);
    addButton(panel2, "5", numActionListener, Color.blue);
    addButton(panel2, "6", numActionListener, Color.blue);
    addButton(panel2, "×", new Signs(), Color.red);
    addButton(panel2, "sin", new Signs(), Color.magenta);
    addButton(panel2, "x^2", new Signs(), Color.magenta);
    addButton(panel2, "1", numActionListener, Color.blue);
    addButton(panel2, "2", numActionListener, Color.blue);
    addButton(panel2, "3", numActionListener, Color.blue);
    addButton(panel2, "-", new Signs(), Color.red);
    addButton(panel2, "cos", new Signs(), Color.magenta);
    addButton(panel2, "x^3", new Signs(), Color.magenta);
    addButton(panel2, "0", numActionListener, Color.blue);
    addButton(panel2, "-/+", new Clear(), Color.blue);
    addButton(panel2, ".", new Dot(), Color.blue);
    addButton(panel2, "+", new Signs(), Color.red);
    addButton(panel2, "tan", new Signs(), Color.magenta);
    addButton(panel2, "%", new Signs(), Color.magenta);
    addButton(panel2, "π", numActionListener, Color.orange);
    addButton(panel2, "e", numActionListener, Color.orange);
    addButton(panel2, "′″", new Signs(), Color.orange);
    addButton(panel2, "=", new Signs(), Color.red);

    JButton btns = new JButton("计算器");
    btns.setBorder(BorderFactory.createLoweredBevelBorder());
    btns.setEnabled(false); // 按钮不可操作
    btns.setPreferredSize(new Dimension(20, 20));

    panel3.add(btns); // 加入按钮
    addButton(panel3, "MC", null, Color.red);
    addButton(panel3, "MR", null, Color.red);
    addButton(panel3, "MS", null, Color.red);
    addButton(panel3, "M+", null, Color.red);

    panel4.add(panel1, BorderLayout.NORTH);
    panel4.add(panel2, BorderLayout.CENTER);
    this.add(tf, BorderLayout.NORTH);
    this.add(panel3, BorderLayout.WEST);
    this.add(panel4);

    pack();
    this.setResizable(false); // 窗口不可改变大小
    this.setLocation(300, 200);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }