[Java] 计算器 →→→→→进入此内容的聊天室

来自 , 2019-12-08, 写在 Java, 查看 147 次.
URL http://www.code666.cn/view/84f0f204
  1. import java.awt.BorderLayout;
  2. import java.awt.Color;
  3. import java.awt.GridLayout;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6.  
  7. import javax.swing.JButton;
  8. import javax.swing.JFrame;
  9. import javax.swing.JPanel;
  10. import javax.swing.JTextField;
  11.  
  12. /**
  13.  * 一个计算器,与Windows附件自带计算器的标准版功能、界面相仿。 但还不支持键盘操作。
  14.  */
  15. public class Calculator extends JFrame implements ActionListener {
  16.     /** 计算器上的键的显示名字 */
  17.     private final String[] KEYS = { "7", "8", "9", "/", "sqrt", "4", "5", "6",
  18.             "*", "%", "1", "2", "3", "-", "1/x", "0", "+/-", ".", "+", "=" };
  19.     /** 计算器上的功能键的显示名字 */
  20.     private final String[] COMMAND = { "Backspace", "CE", "C" };
  21.     /** 计算器左边的M的显示名字 */
  22.     private final String[] M = { " ", "MC", "MR", "MS", "M+" };
  23.     /** 计算器上键的按钮 */
  24.     private JButton keys[] = new JButton[KEYS.length];
  25.     /** 计算器上的功能键的按钮 */
  26.     private JButton commands[] = new JButton[COMMAND.length];
  27.     /** 计算器左边的M的按钮 */
  28.     private JButton m[] = new JButton[M.length];
  29.     /** 计算结果文本框 */
  30.     private JTextField resultText = new JTextField("0");
  31.  
  32.     // 标志用户按的是否是整个表达式的第一个数字,或者是运算符后的第一个数字
  33.     private boolean firstDigit = true;
  34.     // 计算的中间结果。
  35.     private double resultNum = 0.0;
  36.     // 当前运算的运算符
  37.     private String operator = "=";
  38.     // 操作是否合法
  39.     private boolean operateValidFlag = true;
  40.  
  41.     /**
  42.      * 构造函数
  43.      */
  44.     public Calculator() {
  45.         super();
  46.         // 初始化计算器
  47.         init();
  48.         // 设置计算器的背景颜色
  49.         this.setBackground(Color.LIGHT_GRAY);
  50.         this.setTitle("计算器(java)");
  51.         // 在屏幕(600, 300)坐标处显示计算器
  52.         this.setLocation(600, 300);
  53.         // 不许修改计算器的大小
  54.         this.setResizable(false);
  55.         // 使计算器中各组件大小合适
  56.         this.pack();
  57.     }
  58.  

回复 "计算器"

这儿你可以回复上面这条便签

captcha