Java課程設計(排球比賽記分系統)實驗報告參考模板_第1頁
Java課程設計(排球比賽記分系統)實驗報告參考模板_第2頁
Java課程設計(排球比賽記分系統)實驗報告參考模板_第3頁
Java課程設計(排球比賽記分系統)實驗報告參考模板_第4頁
Java課程設計(排球比賽記分系統)實驗報告參考模板_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Java程序課程設計實驗報告題目: 排球比賽記分系統 專業: 軟件工程 班級: 2015級 組別: 組長: 岑海佳 成員: 1515080101岑海佳、1515080127張圣華 完成日期: 2017.10.8 小組分工:組 長岑海佳負責主要頁面設計及部分代碼組 員張圣華負責部分代碼設計廣西師范學院1 / 17目錄摘要3一、系統設計要求4二、系統需求分析4 2.1功能需求4 2.2性能需求5三、系統詳細設計6 3.1程序流圖 6 3.2本系統運行界面 7四、設計總結和體會9五、參考文獻9代碼附錄10摘要隨著計算機技術的發展,人們對計算機智能化的需求越來越大,對軟件的實用性、速度等性能的要求也越

2、來越高。未來各項賽事的舉辦肯定越來越科技化,傳統手工記錄賽事結果的記錄也越來越滿足不了大眾需求,而且隨著計算機的普及,信息處理量的逐漸擴大,各種工作都逐漸由手工轉為自動化,將使許多復雜、繁瑣、且需要很多人力的工作變得簡單。在本課程設計中,我們就排球比賽記分系統進行科技化的更新,借此隱射到全部體育賽事中。工具軟件利用eclipse開發工具以及記事本記錄方式來開發這個排球比賽記分系統。該系統要滿足的是排球比賽記錄人員記錄簡單化需求,通過電子化記錄使得賽事結果更加安全可靠。此系統也很好的注重用戶體驗舒適度,力求為用戶營造更良好的體驗環境關鍵字:排球比賽記分系統,Eclipse EE,記事本一、系統設

3、計要求 編寫一個能夠對排球比賽實時統計比分和顯示比分的程序。排球競賽規則規定:排球競賽為五局三勝制,每局比賽中得夠25分并且領先對方2分以上的一方將獲得一局勝利,先獲得三局勝利的一方將獲得比賽的勝利。若比賽中出現24:24的比分,則一方必須領先對方2分方可結束一局。若雙方前四局的比分為2:2,則將進行第五局的比賽,第五局比賽中得夠15分并且領先對方2分以上的一方將獲得勝利。若比賽中出現14:14的比分,則一方必須領先對方2分方可結束比賽。設計一個程序,分別用兩個按鈕來輸入比賽一方的得分。根據比賽進展,用兩個固定的按鈕輸入比賽雙方的得分,如果一方得分,則按下對應的按鈕一次,GUI界面上的分數將增

4、加1分。當完成一局比賽時,程序自動將比賽得分清零,并且相應地將獲得本局勝利一方的局分增加1分。若一方獲得三局比賽的勝利,則程序自動顯示獲勝一方的名稱。二、系統需求分析排球計分系統是專門針對排球的一款計分系統,在符合排球規則的情況下輕松計分。應用此系統可以代替人工計分過程,大大減少了由于人員操作引起的錯誤。可以使排球計分達到真正的公正性、公開性。同時又方便了計分人員的記錄操作,系統處理性強。2.1功能需求:(一) 能自由選擇任意兩支比賽隊伍,并且顯示它們對應的隊旗圖像,提高用戶體驗舒適度;(二) 能選擇任意比賽場次,并通過對應按鈕為特定隊伍進行得分加分;(三) 更換場次比分自動清零,重新計分;(

5、四) 對得分進行判斷,如果某只隊伍符合勝利規則,則自動彈出勝利提示框;(五) 能選擇保存賽程的比分,以供回顧使用。2.2性能需求:為了保證系統能夠長期、安全、穩定、可靠、高效的運行,本系統應該滿足以下的性能需求。2.2.1 準確性和及時性系統處理的準確性和及時性是系統的必要性能。系統應能及時而且準確的根據用戶權限及所輸入的信息做出響應。由于本系統的查詢功能對于整個系統的功能和性能完成舉足輕重。作為系統的很多數據來源,而賽程比分對于整個賽事來說至關重要,我們需要保證這個系統能很好的保存比賽結果,這個要求在很大程度上決定了系統的成敗。在系統開發過程中,必須采用一定的方法保證系統數據的準確性和及時性

6、。2.2.2 易用性本系統是直接面對用戶的,而用戶往往對計算機并不是非常熟悉。這就要求系統能夠提供良好的用戶接口,易用的人機交互界面。要實現這一點,就要求系統應該盡量使用用戶熟悉的術語和中文信息的界面,從而保證系統的易用性。三、系統詳細設計 3.1程序流圖:本系統主要實現功能為比賽分數的累加及存儲功能,下圖3.1.1和圖3.2分別為這兩個功能的程序流圖:開始某隊得分點擊對應按鈕實現分數累加一存入系統數據 否判斷是否滿足 結束條件 是 結束 圖3.1.1分累加流程圖開始 否是否保存數據 是 保存文件 結束 圖3.1.2 數據保存流程圖 3.2本系統運行界面: 本系統各部分頁面如下各圖所示: 圖3

7、.2.1主窗口頁面 圖3.2.2選擇比賽隊伍窗口3.2.3選擇比賽場次頁面圖3.2.4保存頁面四、設計總結和體會二十一世紀是一個高速、快捷的年代。在這個高速發展的年代里,我們必須順應社會發展,簡化工作環節,提高工作效率,而且易學、易用,滿足客戶需求。這次系統的設計從最開始的可行性研究,需求分析,到系統的總體設計,詳細設計,再到編碼、測試等的一個整體過程,使我們真正明白了要做一個軟件的難度,特別是要做一個真正可用的軟件,就更難了。在老師和同學的幫助下,我們把以往所學的知識結合起來,利用Eclipse開發工具,完成了本次課程設計,盡量使它能滿足各個方面的要求。當然,我們的個人能力有限,還有很多不足

8、的地方,敬請諒解。在這次課程設計過程中我遇到了不少的難題,界面設計問題,函數使用與實現問題,消息處理問題等等。其中,最關鍵的是在最初對系統的需求分析做的不透徹,導致后續設計工作乃至編碼時的修改工作量變大。所以,通過這次課程設計我深刻體會到軟件工程還是必須學精通點、學透徹點。通過這次課程設計,我學會了如何對所學課程綜合運用,eclipse的使用也有了更進一步了解。總體來說,課程設計讓我學了不少知識。我認為課程設計是我們學習生涯中相當重要的一課,除了驗證學生的學習成果外,也是訓練一個人獨立思考及解決問題的能力.在這里,我要感謝指導老師和同學在這次課程設計中對我的幫助。五、參考文獻: JAVA 2實

9、用教程(第4版)耿祥義 張躍平 編著 清華大學出版社附錄:程序代碼清單package ziyou; import java.awt.*;import javax.swing.*; import java.awt.event.*;import java.io.*;public class jiem extends JFrame /* * */int countAdd1= 0;int countAdd2= 0;String str1 = "國家", "中國", "美國", "英國"String str2 = "

10、;國家", "俄羅斯", "德國", "法國"String str3="場次","第一場","第二場","第三場","第四場","第五場"private static final long serialVersionUID = 1L;private JButton insert = new JButton();private JButton de = new JButton();private JButto

11、n Add1 = new JButton("ADD");private JButton Add2 = new JButton("ADD");private JButton sava = new JButton("Sava");private JLabel VS = new JLabel("VS");private JLabel kong = new JLabel(" : "); private JLabel kong2 = new JLabel(" "); private J

12、Label kong3 = new JLabel(" "); private JLabel kong4 = new JLabel(" ");private JTextField text1=new JTextField(5);private JTextField text2=new JTextField(5); SuppressWarnings( "rawtypes", "unchecked" )private JComboBox jcb= new JComboBox(str1); /下拉框SuppressWarn

13、ings( "rawtypes", "unchecked" )private JComboBox jcb1= new JComboBox(str2); /下拉框SuppressWarnings( "rawtypes", "unchecked" )private JComboBox jcb2= new JComboBox(str3); /下拉框public jiem() Panel panel =new Panel();/panel.setLayout(null); Panel panel2=new Panel();

14、 Panel panel3=new Panel(); /*窗體屬性* this.setResizable(false); this.setTitle("排球記分系統");/標題設置 this.setBounds(200,100,500,600);/前面兩個數據代表位置,后面兩個代表大小 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);ImageIcon background = new ImageIcon("D:ziyouTuPian7.jpg"); /

15、 把背景圖片顯示在一個標簽里面 JLabel label = new JLabel(background); / 把標簽的大小位置設置為圖片剛好填充整個面板 label.setBounds(0, 0, this.getWidth(), this.getHeight(); / 把內容窗格轉化為JPanel,否則不能用方法setOpaque()來使內容窗格透明 JPanel imagePanel = (JPanel) this.getContentPane(); imagePanel.setOpaque(false); / 把背景圖片添加到分層窗格的最底層作為背景 this.getLayeredP

16、ane().add(label, new Integer(Integer.MIN_VALUE);/*第一行* Dimension preferredSize = new Dimension(100,100);/設置尺寸 insert.setPreferredSize(preferredSize); de.setPreferredSize(preferredSize); VS.setFont(new Font("",1,30);/設置字體大小 panel.add(jcb); panel.add(insert); /insert.setBounds(10,10,100,10);

17、 panel.add(VS); panel.add(de); panel.add(jcb1); this.add(panel, BorderLayout.NORTH); /jcb.setSelectedIndex(1); /*第一行*/*第二行* setLayout(new FlowLayout();panel2.add(jcb2); panel2.add(kong4); panel2.add(text1); panel2.add(kong); panel2.add(text2); panel2.add(kong3); panel2.add(sava); this.add(panel2,Bor

18、derLayout.NORTH);/*第二行* /*第三行* setLayout(new FlowLayout(); Dimension preferredSize1 = new Dimension(70,30);/設置尺寸 Add1.setPreferredSize(preferredSize1); Add2.setPreferredSize(preferredSize1); panel3.add(Add1); panel3.add(kong2); panel3.add(Add2); this.add(panel3,BorderLayout.NORTH);/* /*ADD1 分數*Add1.

19、addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) countAdd1+; methodAdd1(); );/*ADD2 分數*Add2.addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) countAdd2+; methodAdd2(); );/*下拉框觸發一*jcb.addItemListener(new ItemListener()

20、 Override public void itemStateChanged(ItemEvent e) /如果選中了一個 if (String) jcb.getSelectedItem()=str10) insert.setIcon(new ImageIcon("D:ziyouTuPian8.jpg"); if (String) jcb.getSelectedItem()=str11) insert.setIcon(new ImageIcon("D:ziyouTuPian1.jpg"); if (String) jcb.getSelectedItem()

21、=str12) insert.setIcon(new ImageIcon("D:ziyouTuPian2.jpg"); if (String) jcb.getSelectedItem()=str13) insert.setIcon(new ImageIcon("D:ziyouTuPian3.jpg"); );/*/*下拉框觸發二*jcb1.addItemListener(new ItemListener() Override public void itemStateChanged(ItemEvent e) /如果選中了一個 if (String) jc

22、b1.getSelectedItem()=str20) de.setIcon(new ImageIcon("D:ziyouTuPian8.jpg"); if (String) jcb1.getSelectedItem()=str21) de.setIcon(new ImageIcon("D:ziyouTuPian4.jpg"); if (String) jcb1.getSelectedItem()=str22) de.setIcon(new ImageIcon("D:ziyouTuPian5.jpg"); if (String) jc

23、b1.getSelectedItem()=str23) de.setIcon(new ImageIcon("D:ziyouTuPian6.jpg"); );/*/*保存數據*sava.addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) sava(); SuppressWarnings("unused")int res=JOptionPane.showConfirmDialog(null, "正在保存", "是否保存", JOptionPane.YES_NO_OPTION); );/* this.setVisible(true); /*觸發1*public void methodAdd1()String s=String.valueOf(countAdd1);text1.setText(s); /*觸發2*public void methodAdd2()String s=String.valueOf(countAdd2);text2.setText(s

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論