201421123118 张中结    201421123098 胡丹丹

a.需求分析

这个程序做成GUI(可以是Windows PC 上的,也可以是Mac、Linux,web,手机上的),成为一个有基本功能、一定价值的程序。在下面的功能需求中实现两个:

  1. 记录用户的对错总数,程序退出再启动的时候,能把以前的对错数量保存并在此基础上增量计算。
  2. 有计时功能,能显示用户开始答题后的消耗时间。
  3. 界面支持中文简体/中文繁体/英语,用户可以选择一种。

b.功能设计

  1.支持语言的切换

  2.计时功能

  3.错题收集

思维导图:

  

c.代码展示:

错题收集并保存在本地

FileWriter fw = null;

                    try {

                    //如果文件存在,则追加内容;如果文件不存在,则创建文件

                    File f=new File("D:/cuoti.txt");

                    fw = new FileWriter(f, true);

                    }

                    catch (IOException e) {

                    e.printStackTrace();

                    }

                    PrintWriter pw = new PrintWriter(fw);

                    pw.println(L8.getText()+"="+T3.getText()+"    "+"正确答案:"+sum1 +'\n');

                    pw.flush();

                    try {

                    fw.flush();

                    pw.close();

                    fw.close();

                    } catch (IOException e) {

                    e.printStackTrace();

                    }
B6.addActionListener(new ActionListener(){//错题本打开 public void actionPerformed(ActionEvent d) { try { Runtime.getRuntime().exec("notepad.exe D:/cuoti.txt"); } catch(Exception e) { System.out.println(e.getMessage()); } } });

语言切换:

B3.addActionListener(new ActionListener(){//简体中文

            public void actionPerformed(ActionEvent e) {

                 L1.setText("题数:");

                 L2.setText("题目:");

                 L3.setText("输入答案:");

                 L4.setText("结果:");

                 L5.setText("答对题数:");

                 L6.setText("答错题数:");

                 L7.setText("答题时间:");

                 B0.setText("开始");

                 B1.setText("下一题");

                 B6.setText("错题集");

                //B2.setText("计时");

            }

        });

        B4.addActionListener(new ActionListener(){//繁体中文

            public void actionPerformed(ActionEvent e) {

                L1.setText("題數");

                L2.setText("題目:");

                 L3.setText("輸入答案:");

                 L4.setText("結果:");

                 L5.setText("答對題數:");

                 L6.setText("答錯題數:");

                 L7.setText("答題時間:");

                 B0.setText("開始");

                 B1.setText("下一題");

                 B6.setText("錯題集");

            }

        });

        B5.addActionListener(new ActionListener(){//英文

            public void actionPerformed(ActionEvent e) {

                 L1.setText("Question number");

                 L2.setText("Test:");

                 L3.setText("Enter the answer:");

                 L4.setText("Result:");

                 L5.setText("Right number:");

                 L6.setText("Wrong number:");

                 L7.setText("Answer times:");

                 B0.setText("Run");

                 B1.setText("Next");

                 B6.setText("WrongTest");

            }

        });

d.调试运行

e.总结

  两个人一起编程还是第一次,前期在磨合上出现了一些问题,但是也慢慢克服了。我认为开始并没有1+1>2的效果,但是磨合之后,两个人的思路就要比一个人的思路更加广泛,确实能达到大于2的效果。不过我还是喜欢一个人编程,也只是在思路上觉得有人帮助开拓一下还不错。

码市地址:https://git.coding.net/zzj201421123118/Second2.git

结对编程-四则运算生成程序-GUI界面的更多相关文章

  1. 结对编程--四则运算(Java)萧英杰 夏浚杰

    结对编程--四则运算(Java)萧英杰 夏浚杰 Github项目地址 功能要求 题目:实现一个自动生成小学四则运算题目的命令行程序 使用 -n 参数控制生成题目的个数(实现) 使用 -r 参数控制题目 ...

  2. 20175226 2018-2019-2《java程序设计》结对编程-四则运算(第一周-阶段总结)

    结对编程-四则运算(第一周-阶段总结) 需求分析 实现一个四则运算程序,要求: 自动随机生成小学四则运算题目(加,减,乘,除) 支持整数.真分数且支持多项式 能够利用栈的思想,将中缀转换为后缀表达式 ...

  3. 20175305张天钰Java结对编程四则运算(二)

    Java结对编程四则运算(二) 一.题目描述及要求 Git提交粒度不要太粗,建议一个文件/一个类/一个函数/一个功能/一个bug修复都进行提交,不能一天提交一次,更不能一周一次,参考Commit Me ...

  4. 20175305张天钰Java结对编程四则运算

    Java结对编程四则运算 一.题目描述:如何对表达式进行求值运算呢 1.中缀表达式与后缀表达式(娄老师讲解) 中缀表达式就是运算符号在运算数中间的表达式,比如1+2,顾名思义,后缀表达式就是运算符在运 ...

  5. 结对编程--四则运算(Java)梅进鹏 欧思良

    结对编程--四则运算(Java)梅进鹏 欧思良 Github项目地址:https://github.com/MeiJinpen/Arithmetic 功能要求 题目:实现一个自动生成小学四则运算题目的 ...

  6. “四则运算生成程序——GUI支持和部分功能改进”链接

    项目成员:张金生     张政 <正文随笔发布在张金生博客中> 四则运算生成程序——GUI支持和部分功能改进

  7. 王译潇20162314 实验报告三plus结对编程四则运算第一阶段

    北京电子科技学院BESTI实验报告 课程:程序设计与数据结构 班级: 1623 姓名: 王译潇 学号:20162314 指导教师:娄佳鹏老师.王志强老师 实验日期:2017年5月12号 实验密级: 非 ...

  8. Java结对编程四则运算一周小结

    Java结对编程四则运算一周小结 需求分析 对于四则运算来说最主要的就是要计算出产生的式子(字符串的形式). 设计思路 总体可将这个项目分解为几个部分:产生式子,计算式子,判断对错并记录: 具体的思路 ...

  9. 结对编程1 —— 基于GUI和Swing的四则运算题目生成器

    合作伙伴 201421123102 王艳秋 201421123106 陈 雄 代码地址 题目描述 我们在个人作业1中,用各种语言实现了一个命令行的四则运算小程序.进一步,本次要求把这个程序做成GUI( ...

随机推荐

  1. swift3.0 屏幕截图并且保存到本地相册

    所要截取的对象 var bg_view: UIView! 截取并且保存的代码如下 UIGraphicsBeginImageContextWithOptions(bg_view.frame.size, ...

  2. python--DenyHttp项目(2)--ACM监考客户端测试版(1阶段客户端总结)

    客户端: 1.既然脚本是让别人用的,怎么说也得有个界面,(虽然很low) ''' DenyManager.py 调用客户端与客户端界面 ''' from DenyClient import * fro ...

  3. poj-2287---Tian Ji -- The Horse Racing

    #include<iostream> #include<algorithm> using namespace std; bool cmp(const int,const int ...

  4. C# 6.0 内插字符串 (Interpolated Strings )

    讲Interpolated Strings之前,让我们先看EF Core 2.0 的一个新的特性:String interpolation in FromSql and ExecuteSqlComma ...

  5. NYOJ-63 小猴子下落(二叉树及优化算法详解)

      小猴子下落 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 有一颗二叉树,最大深度为D,且所有叶子的深度都相同.所有结点从左到右从上到下的编号为1,2,3,··· ...

  6. centos7下nginx安装

    http://www.linuxidc.com/Linux/2016-09/134907.htm 安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Window ...

  7. MySQL replication illegal mix of collations

    MySQL replication case 一则 转载:http://www.vmcd.org/2013/09/mysql-replication-case-%E4%B8%80%E5%88%99/ ...

  8. 使用oschina的git服务器图文流程 (转)

    参考了豆沙包的教程我自己也做了一遍也来写写我的心得和体会 由于报名参加了游戏蛮牛<刀塔传奇>开源项目,服务器+客户端,所以觉着不管时间怎么着,还是或多或少做点贡献吧.毕竟这种体验应该还是第 ...

  9. Request常用方法 (总结)

    一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象 ...

  10. How to quickly become effective when joining a new company

    How to quickly become effective when joining a new company The other day my colleague Richard asked ...