作业要求:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213

同伴:201606120020林灿彬

博客园:http://www.cnblogs.com/lincan-5201314/

一.基本要求

  • 自动生成题目,单个题目最多不能超过4个运算符,操作数小于100。
  • 用户可以输入答案
  • 若用户输入答案正确,则提示正确;若答案错误,则提示错误,并要提示正确答案是多少。

二.开发环境

  程序所使用的开发环境是:IntelliJ IDEA 2018.2.2x

三.扩展方向

  1. 用户答题结束以后,程序可以显示用户答题所用的时间
  2. 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数
  3. 程序可以出带括号的正整数四则运算,支持分数,除法保留两位小数,如:(1/3+1)*2 = 2.67,特别注意:这里是2.67而非2.66,或保持分数形式:8/3
  4. 程序可以设置皮肤功能,可以改变界面的颜色即可。

四.程序实现

结队项目的实现,需要有可视化界面的显示。

验证代码过程:

 switch (i) {
                                                      case 1:
                                                          answer1 = textField3.getText();
                                                          if(answer1.length()==0)
                                                          {
                                                              label3.setText("错误,答案为"+arr[0]);
                                                          }
                                                          else {
                                                              right1 = Double.valueOf(answer1);
                                                            temp = df.format(right1);
                                                            right1 = Double.valueOf(temp);
                                                            if (right1 == arr[0]) {
                                                                  label3.setText("回答正确");
                                                                  account++;
                                                              }
                                                              else {
                                                                  label3.setText("错误,答案为"+arr[0]);
                                                              }
                                                          }
                                                            label1.setVisible(false);
                                                            label2.setVisible(false);
                                                            label3.setVisible(true);
                                                            label4.setVisible(false);
                                                            label5.setVisible(false);
                                                          break;
                                                      case 2:
                                                          answer1 = textField2.getText();
                                                          answer2 = textField3.getText();
                                                          if(answer1.length()==0)
                                                          {
                                                              label2.setText("错误,答案为"+arr[0]);
                                                          }else {
                                                              right1 = Double.valueOf(answer1);
                                                              temp = df.format(right1);
                                                              right1 = Double.valueOf(temp);
                                                              if (right1 == arr[0]) {
                                                                  label2.setText("回答正确");
                                                                  account++;
                                                              }
                                                              else {
                                                                  label2.setText("错误,答案为"+arr[0]);
                                                              }
                                                          }

背景色的改变:

  changeBgc.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    Color ch = JColorChooser.showDialog(jf, "背景色改变",
                            jf.getBackground());
                    if (ch != null) {
                        jf.getContentPane().setBackground(ch);
                        jf.getContentPane().repaint();
                    }
                }
            });//改变窗口背景颜色

五、感悟

在这次作业中,深深的感受到自己对java感悟不够。就连最简单的窗口创建和元素的布置也花了很多的时间去做,本来感觉这个作业不是特别难,可结果却不是很如意,不管从界面美观还是从功能上来说,这个项目离完善还差了许多,不过还好设计的思路总体上还是挺明确的,对于实现方面,就是对知识掌握不够,在以后的学习中需要加强学习,加强练习。

六.结队工作照片

posted on 2018-10-24 21:39  KevinShem  阅读(226)  评论(2编辑  收藏  举报