Java课程设计----仿Windows标准型计算器
JAVA课程设计
仿Windows标准型计算器(By Yanboooooooo)
一、团队介绍:
连燕波[组长]:网络1513学生。
张文博[组员]:网络1513学生。
二、项目git地址
三、项目git提交记录截图

四、项目主要使用技术
- JFrame
五、项目其余特点
一个计算器,与Windows附件自带计算器的标准版功能、界面相仿。
实现基本的数字运算
较传统计算器,使用和携带起来方便。
六、项目功能架构图与主要功能流程图

七、项目运行截图
- 界面

八、项目关键代码
/**
* @author Yanboooooooo
* CE、退格、C功能键
*/
private void ClearEnterButtonActionPerformed(java.awt.event.ActionEvent evt) {
resultText.setText("0");
}
private void BackspaceButtonActionPerformed(java.awt.event.ActionEvent evt) {
String text = resultText.getText();
int i = text.length();
if (i > 0) {
// 退格,将文本最后一个字符去掉
text = text.substring(0, i - 1);
if (text.length() == 0) {
// 如果文本没有了内容,则初始化计算器的各种值
resultText.setText("0");
firstDigit = true;
operateCommand = "=";
} else {
// 显示新的文本
resultText.setText(text);
}
}
}
private void ClearButtonActionPerformed(java.awt.event.ActionEvent evt) {
resultText.setText("0");
firstDigit = true;
operateCommand = "=";
}
/**
* @author Yanboooooooo
* 加减乘除
*/
private void DivideButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "/";
op1 = Double.parseDouble(resultText.getText());
//System.out.println("op1="+op1);
firstDigit = true;
}
private void MultiplyButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "*";
op1 = Double.parseDouble(resultText.getText());
firstDigit = true;
}
private void SubtractButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "-";
op1 = Double.parseDouble(resultText.getText());
firstDigit = true;
}
private void AddButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "+";
op1 = Double.parseDouble(resultText.getText());
firstDigit = true;
}
/**
* @author Yanboooooooo
* 数字键0-9
*/
private void B1ButtonActionPerformed(java.awt.event.ActionEvent evt) {
String key = "1";
//标识符firstDigit 判断是否是输入数字的第一位
if (firstDigit) {
resultText.setText(key);
//对于小数点的判断
} else if ((key.equals(".")) && (resultText.getText().indexOf(".") < 0)) {
resultText.setText(resultText.getText() + ".");
} else if (!key.equals(".")) {
resultText.setText(resultText.getText() + key);
}
//之后的数字一定不是第一个输入数字
firstDigit = false;
}
/**
*@author Yanboooooooo
* M功能键
*/
private void MemorySaveButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "MS";
double op2 = Double.parseDouble(resultText.getText());
memory = op2 ;
}
private void MemoryAddButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "M+";
double op2 = Double.parseDouble(resultText.getText());
resultText.setText((op2 + memory) +"");
memory = op2+ memory;
}
private void MemoryRecallButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "MR";
resultText.setText(memory + "");
}
private void MemoryClearButtonActionPerformed(java.awt.event.ActionEvent evt) {
operateCommand = "MC";
memory = 0 ;
}
九、尚待改进或者其他想法
代码结构有待优化。
时间有限,能继续改进为科学型计算器。
十、团队成员任务分配,团队成员课程设计博客链接(以表格形式呈现),标明组长
任务分配:
连燕波:主要图形界面的排版,添加按键的事件监听,功能函数的编写。
张文博:按键代码编写,主要图形界面的设计,测试运行。
Java课程设计----仿Windows标准型计算器的更多相关文章
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- java课程设计团队博客
java课程设计 本组主题:Calculator(简易计算器) 功能要求:基本实现计算器的功能,可运行加.减.乘.除.求倒数.求平方根.求百分号运算.正负数运算等 一.团队介绍 团队名称:熬夜做不出随 ...
- java课程设计(Calculator) 201521123027 陈龙
1.团队博客链接 http://www.cnblogs.com/DevilRay/p/7064482.html 2.个人负责模块或任务说明 (1)主函数的编写: (2)加减乘除运算的实现: (3)求倒 ...
- java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)
Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
- Java 课程设计 "Give it up"小游戏(团队)
JAVA课程设计 "永不言弃"小游戏(From :Niverse) 通过Swing技术创建游戏的登陆注册界面,使用mySQL数据库技术完成用户的各项信息保存和游戏完成后的成绩保存. ...
- Java课程设计—象棋
1. 团队名称.团队成员介绍 团队名称:WY 团队成员: 吴慧婷[组长] 201521123094 网络1514 姚佳希 201521123042 网络1512 2 项目git地址 Java课程设计 ...
随机推荐
- session和cookie的辨析[阅读]
session和cookie是网站浏览中较为常见的两个概念,也是比较难以辨析的两个概念,但它们在点击流及基于用户浏览行为的网站分析中却相当关键.基于网上一些文章和资料的参阅,及作者个人的应用体会,对这 ...
- [H5]range对象的createRange方法
range对象的extractContents()方法: extractContents() 方法删除文档内容,并以 DocumentFragment 对象的形式返回它; DocumentFragme ...
- sublime text 的小细节设置,让你的代码更优美
这些属性都可以在 首选项>设置-默认 里修改下面也会介绍几个比较常用的几个插件 字体大小: "font_size": 17 高亮编辑中的一行 "highlight_ ...
- 原创:Docker在云家政的应用 谢绝复制粘贴内容
我们公司目前大规模使用了Docker,目前除了数据库应用,其他所有应用都在Docker容器内运行,下面我就Docker在公司的应用做一些分享.. 首先我介绍一下公司的背景,公司属于中小型创业公司,服务 ...
- JavaScript基础语句
一.前言: 有过学习其他语言的经历,会比较好上手.但是,没有学过也无关大雅.只要认真学,都会学好.毕竟,都只是一些基础的语句.关键在于要会运用. 掌握好语句的嵌套,以及要的逻辑思维能力,就已经成功一大 ...
- Windows权限提升基础知识和命令
介绍 这篇文章是介绍window的权限提升,虽然不是一个全面的指南,但会试图覆盖主要的技术,常用的资源列表在文章底部,可供大家参考. window权限提升基础知识 初始信息收集 在开始提权之前,我们需 ...
- Jmeter常用功能详解
嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅
- web安全:QQ号快速登录漏洞及被盗原理
为什么你什么都没干,但QQ空间中却发了很多小广告?也许你的QQ账号已经被盗.本文将讲解一个QQ的快速登录的漏洞. 我前阵子在论坛上看到一个QQ的快速登录的漏洞,觉得非常不错,所以把部分原文给转到园子来 ...
- C#/VB.NET对EXCEL图片添加超链接
在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档是,需要对在Excel中输入的相关文字进行超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给 ...
- jmeter响应断言
jmeter提供了很多种断言,本文我就介绍下我们经常使用的响应断言! 响应断言 :对服务器的响应进行断言校验 (1).应用范围Apply to : Main sample and sub-sample ...