天天看點

結對程式設計-四則運算生成程式-GUI界面

201421123118 張中結    201421123098 胡丹丹

a.需求分析

    這個程式做成GUI(可以是Windows PC 上的,也可以是Mac、Linux,web,手機上的),成為一個有基本功能、一定價值的程式。在下面的功能需求中實作兩個:

  1. 記錄使用者的對錯總數,程式退出再啟動的時候,能把以前的對錯數量儲存并在此基礎上增量計算。
  2. 有計時功能,能顯示使用者開始答題後的消耗時間。
  3. 界面支援中文簡體/中文繁體/英語,使用者可以選擇一種。

b.功能設計

  1.支援語言的切換

  2.計時功能

  3.錯題收集

思維導圖:

  

結對程式設計-四則運算生成程式-GUI界面

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.調試運作

結對程式設計-四則運算生成程式-GUI界面
結對程式設計-四則運算生成程式-GUI界面

 e.總結

  兩個人一起程式設計還是第一次,前期在磨合上出現了一些問題,但是也慢慢克服了。我認為開始并沒有1+1>2的效果,但是磨合之後,兩個人的思路就要比一個人的思路更加廣泛,确實能達到大于2的效果。不過我還是喜歡一個人程式設計,也隻是在思路上覺得有人幫助開拓一下還不錯。

碼市位址:https://git.coding.net/zzj201421123118/Second2.git