资源简介
java做的计算器,有两个模式:科学计算器,简单计算器
![](http://www.nz998.com/pic/59545.jpg)
代码片段和文件信息
package com.chp01.test1;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Calculator extends Jframe implements ActionListener {
// 计算器上的键的显示名字 */
private final String[] KEYS = { “7“ “8“ “9“ “/“ “sqrt“ “4“ “5“ “6“
“*“ “%“ “1“ “2“ “3“ “-“ “1/x“ “0“ “+/-“ “.“ “+“ “=“ };
// 计算器上的功能键的显示名字 */
private final String[] COMMAND = { “←“ “CE“ “C“ };
// 计算器左边的M的显示名字 */
private final String[] M = { “ “ “MC“ “MR“ “MS“ “M+“ };
// 计算器上键的按钮 */
private JButton keys[] = new JButton[KEYS.length];
// 计算器上的功能键的按钮 */
private JButton commands[] = new JButton[COMMAND.length];
// 计算器左边的M的按钮 */
private JButton m[] = new JButton[M.length];
// 计算结果文本框 */
private JTextField resultText = new JTextField(“0“);
// 标志用户按的是否是整个表达式的第一个数字或者是运算符后的第一个数字
private boolean firstDigit = true;
// 计算的中间结果。
private double resultNum = 0.0;
// 当前运算的运算符
private String operator = “=“;
// 操作是否合法
private boolean operateValidFlag = true;
/**
* 构造函数
*/
public Calculator() {
super();
// 初始化计算器
init();
JMenuBar mb = new JMenuBar();//创建菜单栏
JMenu b1 = new JMenu(“操作“);
JMenu b2 = new JMenu(“帮助“);
JMenuItem c1 = new JMenuItem(“基本计算器“);
JMenuItem c2 = new JMenuItem(“科学计算器“);
JMenuItem c3 = new JMenuItem(“About...“);
setJMenuBar(mb);//添加菜单栏
mb.add(b1);
mb.add(b2);//添加菜单
b1.add(c2);
b1.add(c1);
b2.add(c3);
b1.setFont(new Font(“宋体“ Font.PLAIN 17));
b2.setFont(new Font(“宋 体“ Font.PLAIN 17));
c1.addActionListener(new MenuItemListener());//监听简易计算
c2.addActionListener(new MenuItemListener());//监听科学计算
c3.addActionListener(new MenuItemListener());//监听关于
// 设置计算器的背景颜色
this.setBackground(Color.LIGHT_GRAY);
this.settitle(“计算器“);
// 在屏幕(300 200)坐标处显示计算器
this.setLocation(300 200);
// 不许修改计算器的大小
this.setResizable(false);
// 使计算器中各组件大小合适
setVisible(true);
this.pack();
}
/**
* 初始化计算器
*/
private void init() {
// 文本框中的内容采用右对齐方式
resultText.setHorizontalAlignment(JTextField.RIGHT);
// 不允许修改结果文本框
resultText.setEditable(false);
// 设置文本框背景颜色为白色
resultText.setBackground(Color.white);
// 初始化计算器上键的按钮,将键放在一个画板内
JPanel calckeysPanel = new JPanel();
// 用网格布局器,4行,5列的网格,网格之间的水平方向间隔为3个象素,垂直方向间隔为3个象素
calckeysPanel.setLayout(new GridLayout(4 5 3 3));
for (int i = 0; i < KEYS.length; i++) {
keys[i] = new JButton(KEYS[i]);
calckeysPanel.add(keys[i]);
keys[i].setForeground(Color.blue);
keys[i].setFont(new Font(“微软雅黑“ Font.BOLD 13));
}
// 运算符键用红色标示,其他键用蓝色表示
keys[3].setForeground(Color.black);
keys[8].setForeground(Color.black);
keys[13
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9315 2016-06-30 10:06 test1\Calculator.java
文件 1060 2016-06-30 13:26 test1\MenuItemListener.java
文件 10257 2016-06-30 10:21 test1\ScienceCal.java
目录 0 2016-06-30 09:49 test1
----------- --------- ---------- ----- ----
20632 4
相关资源
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
- 操作系统作业 (pv,作业管理,等5个
评论
共有 条评论