Java课程设计(排球比赛记分系统)实验报告_第1页
Java课程设计(排球比赛记分系统)实验报告_第2页
Java课程设计(排球比赛记分系统)实验报告_第3页
Java课程设计(排球比赛记分系统)实验报告_第4页
Java课程设计(排球比赛记分系统)实验报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、java程序课程设计实验报告题目: 排球比赛记分系统 专业: 软件工程 班级: 2015级 组别: 组长: 岑海佳 成员: 1515080101岑海佳、1515080127张圣华 完成日期: 2017.10.8 小组分工:组 长岑海佳负责主要页面设计及部分代码组 员张圣华负责部分代码设计广西师范学院目录摘要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界面上的分数将增加1分。当完

4、成一局比赛时,程序自动将比赛得分清零,并且相应地将获得本局胜利一方的局分增加1分。若一方获得三局比赛的胜利,则程序自动显示获胜一方的名称。二、系统需求分析排球计分系统是专门针对排球的一款计分系统,在符合排球规则的情况下轻松计分。应用此系统可以代替人工计分过程,大大减少了由于人员操作引起的错误。可以使排球计分达到真正的公正性、公开性。同时又方便了计分人员的记录操作,系统处理性强。2.1功能需求:(一) 能自由选择任意两支比赛队伍,并且显示它们对应的队旗图像,提高用户体验舒适度;(二) 能选择任意比赛场次,并通过对应按钮为特定队伍进行得分加分;(三) 更换场次比分自动清零,重新计分;(四) 对得分

5、进行判断,如果某只队伍符合胜利规则,则自动弹出胜利提示框;(五) 能选择保存赛程的比分,以供回顾使用。2.2性能需求:为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。2.2.1 准确性和及时性系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入的信息做出响应。由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而赛程比分对于整个赛事来说至关重要,我们需要保证这个系统能很好的保存比赛结果,这个要求在很大程度上决定了系统的成败。在系统开发过程中,必须采用一定的方法保证系统数据的准确性和及时性。2.2.2

6、 易用性本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。三、系统详细设计 3.1程序流图:本系统主要实现功能为比赛分数的累加及存储功能,下图3.1.1和图3.2分别为这两个功能的程序流图:开始某队得分点击对应按钮实现分数累加一存入系统数据 否判断是否满足 结束条件 是 结束 图3.1.1分累加流程图开始 否是否保存数据 是 保存文件 结束 图3.1.2 数据保存流程图 3.2本系统运行界面: 本系统各部分页面如下各图所示: 图3.2.1主窗

7、口页面 图3.2.2选择比赛队伍窗口3.2.3选择比赛场次页面图3.2.4保存页面四、设计总结和体会二十一世纪是一个高速、快捷的年代。在这个高速发展的年代里,我们必须顺应社会发展,简化工作环节,提高工作效率,而且易学、易用,满足客户需求。这次系统的设计从最开始的可行性研究,需求分析,到系统的总体设计,详细设计,再到编码、测试等的一个整体过程,使我们真正明白了要做一个软件的难度,特别是要做一个真正可用的软件,就更难了。在老师和同学的帮助下,我们把以往所学的知识结合起来,利用eclipse开发工具,完成了本次课程设计,尽量使它能满足各个方面的要求。当然,我们的个人能力有限,还有很多不足的地方,敬请

8、谅解。在这次课程设计过程中我遇到了不少的难题,界面设计问题,函数使用与实现问题,消息处理问题等等。其中,最关键的是在最初对系统的需求分析做的不透彻,导致后续设计工作乃至编码时的修改工作量变大。所以,通过这次课程设计我深刻体会到软件工程还是必须学精通点、学透彻点。通过这次课程设计,我学会了如何对所学课程综合运用,eclipse的使用也有了更进一步了解。总体来说,课程设计让我学了不少知识。我认为课程设计是我们学习生涯中相当重要的一课,除了验证学生的学习成果外,也是训练一个人独立思考及解决问题的能力.在这里,我要感谢指导老师和同学在这次课程设计中对我的帮助。五、参考文献: java 2实用教程(第4

9、版)耿祥义 张跃平 编著 清华大学出版社附录:程序代码清单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 = 国家, 俄罗斯, 德国, 法国;string str3=场次,第一场,第二场,第三场,第四场,第五场;private

10、 static final long serialversionuid = 1l;private jbutton insert = new jbutton();private jbutton de = new jbutton();private jbutton 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 jla

11、bel( : ); private jlabel kong2 = new jlabel( ); private jlabel 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); /下拉框sup

12、presswarnings( 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(); panel panel3=new panel(); /*窗体属性* this

13、.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); / 把背景图片显示在一个标签里面 jlabel label = new jlabel(background); / 把标签的大小

14、位置设置为图片刚好填充整个面板 label.setbounds(0, 0, this.getwidth(), this.getheight(); / 把内容窗格转化为jpanel,否则不能用方法setopaque()来使内容窗格透明 jpanel imagepanel = (jpanel) this.getcontentpane(); imagepanel.setopaque(false); / 把背景图片添加到分层窗格的最底层作为背景 this.getlayeredpane().add(label, new integer(integer.min_value);/*第一行* dimensio

15、n 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); panel.add(vs); panel.add(de); panel.add(jcb1); this.add(panel, borderlayou

16、t.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,borderlayout.north);/*第二行* /*第三行* setlayout(new flowlayout(); dimension prefer

17、redsize1 = 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.addactionlistener(new actionlistener() override public void actionperformed

18、(actionevent e) countadd1+; methodadd1(); );/*add2 分数*add2.addactionlistener(new actionlistener() override public void actionperformed(actionevent e) countadd2+; methodadd2(); );/*下拉框触发一*jcb.additemlistener(new itemlistener() override public void itemstatechanged(itemevent e) /如果选中了一个 if (string) jc

19、b.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()=str12) insert.seticon(new imageicon(d:ziyoutupian2.jpg); if (string) jcb.getselecteditem()=str13)

20、insert.seticon(new imageicon(d:ziyoutupian3.jpg); );/*/*下拉框触发二*jcb1.additemlistener(new itemlistener() override public void itemstatechanged(itemevent e) /如果选中了一个 if (string) jcb1.getselecteditem()=str20) de.seticon(new imageicon(d:ziyoutupian8.jpg); if (string) jcb1.getselecteditem()=str21) de.seti

21、con(new imageicon(d:ziyoutupian4.jpg); if (string) jcb1.getselecteditem()=str22) de.seticon(new imageicon(d:ziyoutupian5.jpg); if (string) jcb1.getselecteditem()=str23) de.seticon(new imageicon(d:ziyoutupian6.jpg); );/*/*保存数据*sava.addactionlistener(new actionlistener() override public void actionper

22、formed(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(c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论