结队编程-基于gui的四则运算生成器
成员:卢少锐 201421123027、刘存201421033023
1.需求分析:除了实现四则运算的功能外,还添加了计时器功能和语言选择功能
2.程序设计:这次作业是基于上次作业写的四则运算代码的,我跟卢少锐同学经过讨论,决定用他上次作业的代码,然后进行了一些修改,得到calculator()类,;在此基础上我们又加了一个szyswindows()类,这个类的作用如下:
1).实现计时功能;
2).实现语言选择功能;
3).实现图形用户界面。
下面是这两个类的思维导图:
calculator()类:
szyswindows()类:
3.代码展示:
1).计时器:构建System.currentTimeMillis()函数,利用开始答题和结束答题时的时间差,实现计时功能
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
over=System.currentTimeMillis();
now1=((over-now) / (1000 * 60 * 60) % 60)+":"+((over-now)/ (1000 * 60)% 60)+":"+((over-now)/ 1000 % 60);
String a=now1+"";
jTextField7.setText(a);
// TODO add your handling code here:
}
2).语言选择器:设置了三种语言:简体,繁体,英文。通过netbeans在设置三个的按钮,然后在每个按钮上用相应的语言设置其功能。
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
jLabel1.setText("arithmetic");
jLabel2.setText("Please input number :");
jButton1.setText("Start");
jLabel3.setText("The topic purpose :");
jButton2.setText("answer");
jLabel5.setText("Your answer:");
jLabel10.setText("correct answer:");
jButton4.setText("Next question");
jLabel9.setText("The time used for:");
jLabel7.setText("Wrongc number : ");
jLabel6.setText("All number : ");
jLabel8.setText("correct : ");
jButton3.setText("End of the answer");// TODO add your handling code here:
private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
} private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {
jLabel1.setText("四则运算");
jLabel2.setText("请输入题数:");
jButton1.setText("开始做题");
jLabel3.setText("题 目:");
jButton2.setText("查看答案");
jLabel5.setText("你的答案: ");
jLabel10.setText("正确答案:");
jButton4.setText("下一题");
jLabel9.setText("所用时间为:");
jLabel7.setText("错 题 数:");
jLabel6.setText("答 题 数:");
jLabel8.setText("正 确 率:");
jButton3.setText("结束答题");
// TODO add your handling code here:
}
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
jLabel1.setText("四則運算");
jLabel2.setText("請輸入題數:");
jButton1.setText("開始做題");
jLabel3.setText("題 目:");
jButton2.setText("查看答案");
jLabel5.setText(" 你的答案是:");
jLabel10.setText("正確答案是:");
jButton4.setText("下一題");
jLabel9.setText("所用時間為 :");
jLabel7.setText("錯 題 數:");
jLabel6.setText("答 題 數:");
jLabel8.setText("正 確 率:");
jButton3.setText("结束答題");
// TODO add your handling code here:
}
4.测试运行:
5.小结:我觉得这次作业有点难,之前对图形用户界面一窍不通,这次幸好是两个人一块做,不过少锐同学做的要比较多,感觉自己有抱大腿的嫌疑... ,我在旁边就帮他搜一些不懂的问题,然后提一些建议。结对编程能够结合两个人不同的想法和建议,这样做出来的程序肯定要比一个人做的更加完善,感觉不错。
psp:
汉堡式评价
先来一片面包:我们俩互相看了一下对方的四则运算代码,商量之后决定以他的代码为基础实现图形用户界面,因为他的比我的更简单,我的代码有点复杂了,不容易改。
再把肉放上:程序刚做出来运行的时候,发现语言切换的时候,当简体中文切换到英文的时候,有些英文字母只能显示一半,虽然不影响功能,但还是有瑕疵,后来建议他调整了一下文本框和标签的大小和位置,才解决了这个问题。
再来一片面包:第一次跟人合作编程,刚开始觉得很麻烦,还要商量来商量去的,肯定会浪费时间,做完之后觉得,这样做虽然慢点,但做出来的东西更加完善,就不用再改来改去的,其实也是对时间的一种节约。然后,其实那张照片是摆拍的,拍的太gay了,我必须要澄清一下,我是直男,还有我比他帅。
结队编程-基于gui的四则运算生成器的更多相关文章
- 结队编程--基于GUI的四则运算
coding地址 https://git.coding.net/lizhiqiang0x01/GUI-sizeyunsuan.git 李志强 201421123028 连永刚 201421123014 ...
- 结对作业--基于GUI的四则运算生成器
组员:201421123015 陈麟凤 201421123019 张志杰 201421123020 黄海鸿 coding 地址 :https://coding.net/u/zhang1995/p/wo ...
- 基于GUI的四则运算
基于GUI的四则运算 李志强 201421123028 连永刚 201421123014 林方言 201421123023 coding 地址 https://git.coding.net/lizhi ...
- 结对作业1----基于GUI的四则运算生成器
组员:201421123015 陈麟凤 201421123019 张志杰 201421123020 黄海鸿 coding 地址:代码点这里 需求分析: 1.除了整数的四则运算还要支持分数的四则运算: ...
- 结对编程1-基于GUI的四则运算生成器
201421123016郑怀勇 201421123017康建灿 程序代码 / 康建灿 一.需求分析 记录用户的对错总数. 程序退出再启动的时候,能把以前的对错数量保存并在此基础上增量计算. 有 ...
- 结对作业(1)----基于GUI的四则运算
小伙伴:201421123031 余洋 201421123044 潘志坚 题目要求: 我们在个人作业1中,用各种语言实现了一个命令行的四则运算小程序.进一步,本次要求把这个程序做成GUI(可以是W ...
- 结对作业:基于GUI实现四则运算
1)Coding.Net项目地址:https://git.coding.net/day_light/GUIszysLL.git 2)在开始实现程序之前,在下述PSP表格记录下你估计将在程序的各个模块的 ...
- 结对实验---基于GUI的四则运算
详细代码:https://git.coding.net/wangluo24/NO.2.git 结对伙伴:吕志哲(201421123021) &本人.许明涛 201421123024 一.题目要 ...
- 结对作业-基于GUI的四则运算
一.需求分析 1.题目要求: 我们在个人作业1中,用各种语言实现了一个命令行的四则运算小程序.进一步,本次要求把这个程序做成GUI(可以是Windows PC 上的,也可以是Mac.Linux,web ...
随机推荐
- [原创] Python3.6+request+beautiful 半次元Top100 爬虫实战,将小姐姐的cos美图获得
1 技术栈 Python3.6 Python的版本 request 得到网页html.jpg等资源的lib beautifulsoup 解析html的利器 html5lib 指定beautifulso ...
- WPF中使用Data Annotations验证Model
.NET Framework中System.ComponentModel.DataAnnotations提供了很多属性来验证对象的属性.可以在C:\Program Files (x86)\Refere ...
- mysql对binlog的处理
--mysql对binlog的处理 ------------------------2014/05/28 Binlog是mysql以二进制形式打印的日志,它默认不加密,不压缩.每个正常的binlog文 ...
- C/C++ 知识点---排序实现
1.冒泡排序冒泡排序是O(N^2)复杂度的排序算法,效率较低,需要N趟遍历,每次将候选集中最小的数通过交换浮到最上面: template <typename Type> void Bubb ...
- HTML-移动开发技巧 响应式布局 弹性布局
移动开发常用技巧 [viewport基本知识] 设置布局viewpoint的各种信息 1.width=device-width;设置viewport视口宽度等于设备宽度 2.initial-scale ...
- 升级Cocoapods引起的Mantle库找不到的问题及解决方法
年前升级了Cocoapods库,从0.39升级到了1.2.0-beta版,然后用模拟器和真机测试都是没有问题的,均可以成功编译.今天测试人员要测试包,准备archive打包时,却提示:ld: libr ...
- CentOS 7 服务器配置--配置iptables防火墙
#检查服务器是否安装了iptables systemctl status iptables.service #安装iptables yum install -y iptables #更新iptable ...
- tomcat 组件研究二--请求过程
上一篇博客大概总结了tomcat 的组件以及其组织方式,对于tomcat 的启动过程也进行进行了简单的总结,下面这篇博客,继续研究tomcat 处理请求的相关组件,其实就是主要研究Connectors ...
- Android开发 去掉标题栏方法 摘记
1.用代码里实现 提示:这句代码要写在Activity中的setContentView()方法前面. 2.在清单文件(Androidmanifest.xml)里面实现 android:theme= ...
- "R6002 floating point support not loaded"问题分析
今天为了追踪程序线程退出耗时时间,添加了耗时时间输出日志: TimerMeter tm; // do some threads exit logic float fSecs = tm.Elapsed( ...