《java课程设计打字游戏》由会员分享,可在线阅读,更多相关《java课程设计打字游戏(32页珍藏版)》请在金锄头文库上搜索。

1、Java 课程设计 1各专业全套优秀毕业设计图纸各专业全套优秀毕业设计图纸中南大学Java 课程设计报告题 目 打字游戏 学生姓名 指导教师 学 院 信息科学与工程学院 专业班级 计科 1204 完成时间 2015 年 1 月 15 日 Java 课程设计 2目录第一章 实验要求 .3第 2章 总体设计2.1 界面设计 .42.2 运行流程 .42.3 逻辑设计 .42.4 积分设计 .4第 3章 详细设计3.1 主面板 .53.1.1 两个按键 .53.1.2 相关全局变量 .53.1.3 全局变量说明 .53.1.4 相关全局函数 .73.2 字符下落模块 .73.2.1 WordLabe。

2、l .73.2.2 WordFallControl .83.2.3 WordFallLabel .83.3 速度控制模块 .83.4 按键模块设计 .83.5 键盘监听事件 .93.6 积分模块设计 .93.7 事件模块设计 .10第 4章 调试分析4.1 第一次调试 .114.2 第二次调试 .114.3 第三次调试 .12第 5章 运行结果 .13第 6章 课程设计总结 .17第 7章 参考文献 .19第 8章 附录:带注释的源代码8.1 Wordfall .208.1.1 WordFallControl类 .208.1.2 WordLabel类 .228.1.3 WordFallLabe。

3、l类 .238.2 ScoreLabel类 .248.3 StartButton类 .258.4 TimeLabel类 .268.5 AAAAA类:程序的主函数入口 .288.6 Maintain类 .30Java 课程设计 3第 1 章 实验要求【问题描述】设计实现一个打字游戏,界面参见图 2-2,具备如下功能: 点击“开始”按钮,产生随机字符从屏幕上方下落; 点击键盘上按钮,如果正确,当前的字符消失,产生新的按钮从上方继续落下。 提供速度调整和积分功能。图 2-2 打字游戏界面Java 课程设计 4第 2 章 总体设计2.1 界面设计根据实验要求中的图 2-2,在主面板中,1.1.1 有一。

4、个模块控制各个字符的生成并且控制他们的自动下落,并在正确触发时,字符不可见;1.1.2有一个模块用于设置下落速度;1.1.3有两个按键,分别为“开始”和“结束” ,用于字符下落的开始和结束;1.1.4整个面板处于键盘事件监听中,所以还有一个模块负责监听键盘事件;1.1.5相应的,根据要求,会有一个模块用于将键盘事件和下落的字符进行操作,并且计算出积分。2.2 运行流程1.2.1 程序启动,程序等待按键“开始”的事件的触发;1.2.2 当“开始”键触发后,负责字符下落的模块,将持续产生字符,并使其下落;1.2.3 键盘开始被监听,从键盘的按键触发,向程序返回值;1.2.3 积分模块开始工作,将字。

5、符下落模块的字符和键盘事件返回的值进行比较,得出积分,并且将积分值显示在面板上;1.2.4 如果点击“停止”按键,所有模块停止工作,等待程序关闭,或者等待“开始”按键事件的再次触发,从 1.2.1继续这一流程。2.3 逻辑设计1.3.1 字符不断产生并且下降,需要一个线程控制产生字符,然后还应该有一个线程对面一个字符,控制其下落。1.3.2 键盘被按下后,立刻会有值返回到程序中,积分模块会每隔一段时间将,键盘事件返回的值,和当前需要按下的值进行比较。2.4 积分说明当开始产生字符后,会有很多字符都是可输入的,但是当前可输入的字符只有一个,所以可以考虑设计一个链表,没当产生一个字符,便将该字符存。

6、入链表中,并且有一个指针永远指向当前需要输入的值。由于界面大小有限,当字符持续下落超过界面大小时,不能够通过玩家来猜测,已经不见的当前需要输入字符,所以当界面上字符超过十个时,便认为该玩家反应时间过长,判定其为错误,并且将当前需要输入的字符设置为下一个。并且从游戏角度考虑,当这种情况出现 3次后,Java 课程设计 5便可以判定本轮游戏结束。第 3 章 详细设计3.1 主面板public class GameFrame extends JFrame主面板中主要涉及的是两个按键,各个组件在面板上的布置,以及其他的全局变量的设置。3.1.1 两个按键 JButton btnStart = new 。

7、JButton()JButton btnStop= new JButton()ScoreLabel scoreLabelKeyEventPanel keyEventPanelWordFallLabel wordFallLabelJSlider slider3.1.2 相关的全局变量boolean START_FLAG = false;ArrayList CODE_LIST = new ArrayList();ArrayList wordLabels = new ArrayList();int CHAR_VALUE = 0;int KEY_VALUE = 0;int POINTER = 0;in。

8、t MAXFALSE = 3;int SUCCESSTIME = 0;int TRYTIME = 3;int SPEED = 1400;public static void init()CODE_LIST.clear(); wordLabels.clear();CHAR_VALUE = 0;KEY_VALUE = 0;POINTER = 0;MAXFALSE = 3;SUCCESSTIME = 0;TRYTIME = 3;Java 课程设计 63.1.3 全局变量说明:START_FLAG:由于在程序启动时,各个组件就已经开始工作,用 START_FLAG 使他们通过 if 语句,不做任何动作。

9、,当 START_FLAG = true 时,便可以开始进行游戏,避免了反复启动线程可能会造成意外情况的麻烦。CODE_LIST:在游戏线程启动后,会产生很多的字符,这些字符若存放在局部空间内,很有可能会出现其他组件需要调用该值并且需要通过一系列传值过程才能实现,将这些值放在一个公共空间内的列表中,虽然会出现安全上面的问题,但是无疑为程序的实现减少了很多的工作,宽且这也只是一个游戏,在安全上的问题可以忽略。wordLabels:这个全局变量的设置,主要是为了实现下落字符的消失。产生的字符会放在 label 中,通过控制 label 的行为来控制字符的行为。将每一个 WordLabel 实例放在。

10、该列表中,可以通过在其他空间的控制来实现自己的想法。CHAR_VALUE:里面存放的是产生的字符的值,每一个字符都可以通过 ASCII 码转变为一个整数类型的值,通过比较整数值来确定是否匹配。KEY_VALUE:存放了最近一次从键盘内获得的值,由于可能出现连续出现相同字符的情况,KEY_VALUE 里的值必须定时清空,考虑之后,与每次在每Java 课程设计 7次比较完之后进行清空操作比较合适。POINTER:在 CODE_LIST 中会有很多数,但是当前正确的值,只有一个,那就是 POINTER 指向的位置,通过判断 KEY_VALUE 和 CHAR_VALUE的值,对 POINTER 进行操作,具体操作会在 ScoreLabel 中说明。MAXFALSE, TRYTIME:最大失误次数,当超过这个次数时,当局游戏就会结束。SUCCESSTIME:本轮当前成功次数,统计成功次数用来积分。SPEED:控制字符下落速度,这个值会与难度条上的值具有映射关系。3.1.4 全局方法说明:public static void init();在新的一轮游戏开始前,全局变量中的值任然是上一轮的数据,需要对其中的数据进行初始化,设置为公共方法便于调用,其中的操作都是必须的操作,无多余也无漏缺。3.2 字符下落模块3.2.1 public class。

java打字游戏课程设计_java课程设计打字游戏相关推荐

  1. java打字游戏课程设计_Java课程设计打字游戏.docx

    中南大学 Java 课程设计报告 题 目 打字游戏 学生姓名 窦立阳 指导教师 陈丽萍 学 院 信息科学与工程学院 专业班级 计科 1204 完成时间 2015 年1月15日 目录 第二章 总体设计 ...

  2. java语言中猜数游戏设计_JAVA课程设计-猜数游戏 201521123017

    1.团队课程设计博客链接 2.个人负责模块或任务说明 (1)文件读取和文件的存储 (2)提示板块的窗口设计 (3)选择界面 (4)排行版 3.自己的代码提交记录截图 4.自己负责模块或任务详细说明 ( ...

  3. java黑白棋原码_JAVA课程设计黑白棋源代码

    JAVA课程设计黑白棋源代码 JAVA课程设计黑白棋源代码|java课程设计|数据库课程设计|计算机课程设计|精品课程网站设计 import java.awt.*; import javax.swin ...

  4. java模拟时钟课程设计_java课程设计-时钟图形模拟

    java课程设计-时钟图形模拟 计算机与信息工程系 <高级语言程序设计>课程设计报告课 程 设 计 任 务 书专 业 通信工程 班 级 13 级四班 姓 名 张凯铭设 计 起 止 日 期设 ...

  5. java时钟课程设计_JAVA课程设计报告电子钟

    JAVA课程设计报告电子钟 课 程 设 计 报 告( 2012-- 2013 年度第 2 学期)日历记事本专业 计算机科学与技术学生姓名班级 学号指导教师完成日期目 录目 录 .21 概 述 .41. ...

  6. java实现聊天功能心得_Java课程设计总结 - 在线聊天室(个人)

    一.团队博客及项目地址 二.本人负责的部分 整个系统的框架设计,流程设计. MySQL数据库设计及使用. 服务端面向对象设计,代码编写. 云服务器环境搭建及使用. 黄色框为我负责的部分 三.提交记录 ...

  7. Java猜数游戏怎么验证_Java实现猜数游戏

    利用Math.random()方法产生1~100的随机整数,利用JOptionPane.showInputDialog()方法产生一个输入对话框,用户可以输入所猜的数.若所猜的数比随机生成的数大,则显 ...

  8. java小游戏代码压缩包_java 贪吃蛇小游戏 源码下载

    [实例简介] 使用java程序设计语言制作的一个贪吃蛇小游戏.游戏的控制模块应该做到易懂.易操作,以给玩家一个很好的游戏环境.在这个游戏的设计中,牵涉到图形界面的显示与更新.数据的收集与更新,还要应用 ...

  9. java蜘蛛纸牌课程设计_Java课程设计-蜘蛛纸牌游戏.doc

    Java课程设计-蜘蛛纸牌游戏.doc 还剩 33页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环保! 内容要点: Java 课 ...

最新文章

  1. 查看内核中每个函数花费的时间 initcall_debug
  2. python重复元素判定_20段极简Python代码:这些小技巧你都Get了么
  3. android canvas_Android 如何实现气泡选择动画
  4. js vue中得延时器_Vue.js实现时分秒倒计时
  5. 编程语言对比 字符串
  6. [转载] python判断字符串中包含某个字符串_干货分享| Python中最常用的字符串方法
  7. 大厂的 404 页面都长啥样?看到最后一个,我笑了。。。
  8. JS中图片缓冲loading技术的实例代码
  9. U-boot第二阶段概述(转)
  10. Git XP 安装图解
  11. 炉石兄弟 修复图腾师问题 by大神beebee102, 还有阴燃电鳗
  12. 大健康、医疗服务、商城系统、内容管理、健康数据统计、医疗问诊、慢病管理、科室管理、问诊订单、看病、挂号预约、体检订单、疾病管理、血压、血糖、运动、睡眠、物流、体温、体重、计步、心率、医院、医生、售后
  13. openwrt-17.01.6 LEDE下载
  14. 亮度、饱和度、对比度、灰度 RGBHSV
  15. H3C恢复console登录密码
  16. 阿里云OSS存储实例
  17. 2015-10-13 OC语言中的复合
  18. 语义分割,将RGB三通道的lable转为单通道
  19. gdb调试,splint_valgrind代码检查
  20. Nuendo学习之旅——没声音怎么办

热门文章

  1. 苹果id可以彻底注销吗_淘宝店铺注销了有什么影响吗?后续还可以开吗?
  2. Python的几个基础算法
  3. ECG分析:基于深度学习的ECG心律失常分类入门(3)
  4. 小米电视精简,去开机广告,系统更新,删除无用内置软件等
  5. 计算语言学课程笔记(一)
  6. 科研作图及科研汇报PPT规范
  7. rhino 调用 java_rhino-java中调用javascript
  8. Unifier培训: 系列讲解13:公司级的BP--供应商评估
  9. rock64 linux,挑战树莓派:PINE64 发布 Rock64 Media Board Computer 开发者主板
  10. python输入数学表达式并求值_用Python3实现表达式求值