【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)

上传人:公**** 文档编号:423908975 上传时间:2023-04-24 格式:DOC 页数:28 大小:256.02KB
返回 下载 相关 举报
【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)_第1页
第1页 / 共28页
【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)_第2页
第2页 / 共28页
【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)_第3页
第3页 / 共28页
【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)_第4页
第4页 / 共28页
【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)》由会员分享,可在线阅读,更多相关《【课程设计报告】JAVA实现华容道智力游戏 有源码(word版)(28页珍藏版)》请在金锄头文库上搜索。

1、更多计算机类课程设计、毕业设计、论文请访问:http:/ 软 件 学 院 学院 软件+电子商务 专业 2 班 一、课程设计(论文)题目 华容道一个传统的智力游戏 二、课程设计(论文)工作自 2010 年 12 月 20 日起至 2010 年 12 月 24 日止。三、课程设计(论文) 地点: 软 件 学 院 实 训 中 心 四、课程设计(论文)内容要求:1本课程设计的目的(1)掌握Java语言的程序设计方法; (2)理论联系实际,进一步提高学生的软件开发技术;(3)培养学生分析、解决问题的能力;(4)提高学生实践论文撰写能力。2课程设计的任务及要求1)课程设计任务:用java语言编写一个华容道

2、小游戏2)创新要求:在基本要求达到后,可进行创新设计3)课程设计论文编写要求(1)课程设计任务及要求(2)设计思路-工作原理、功能规划(3)详细设计-数据分析、算法思路、类设计、功能实现(含程序流程图、主要代码及注释)、界面等。(4)运行调试与分析讨论-给出运行屏幕截图,分析运行结果,有何改进想法等。(5)设计体会与小结-设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)(7)报告按规定排版打印,要求装订平整,否则要求返工;(8)课设报告的装订顺序如下:封面-任务书-中文摘要-目录-正文-附录(代码

3、及相关图片)(9) 严禁抄袭,如有发现,按不及格处理。4)课程设计评分标准: (1)学习态度:10分;(2)系统设计:20分;(3)编程调试:20分;(4)回答问题:20分;(5)论文撰写:30分。5)参考文献:(1)丁振凡. Java语言实用教程(第2版)M. 北京邮电大学出版社. 2008.1 (2)丁振凡. Java语言实用教程实验指导(第2版)M. 北京邮电大学出版社. 2008.1(3)杨树林等. Java语言最新实用案例教程(第2版)M. 清华大学出版社. 2010.76)课程设计进度安排1准备阶段(4学时):选择设计题目、了解设计目的要求、查阅相关资料2程序模块设计分析阶段(4学

4、时):程序总体设计、详细设计3代码编写调试阶段(8学时):程序模块代码编写、调试、测试4撰写论文阶段(4学时):总结课程设计任务和设计内容,撰写课程设计论文学生签名: 2010 年 12 月 20 日课程设计(论文)评审意见(1)学习态度(10分):优()、良()、中()、一般()、差(); (2)系统设计(20分):优( )、良()、中()、一般()、差(); (3)编程调试(20分):优()、良()、中()、一般()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)论文撰写(30分):优()、良()、中()、一般()、差(); 评阅人: 职称: 讲师 20

5、10 年 12 月 25 日中文摘要华容道,古老的中国游戏,以其变化多端、百玩不厌的特点与魔方、独立钻石棋一起被国外智力专家并称为“智力游戏界的三个不可思议”。游戏就是依照“曹瞒兵败走华容,正与关公狭路逢,只为当初恩义重,放开金锁走蛟龙”这一故事情节设计,受到很多玩家的喜爱。该程序用Java语言编写 ,棋盘上有10个不一样大小的按钮,分别代表曹操、张飞、赵云、马超、黄忠和关羽,还有四个兵。棋盘最下方有两个空着的小方格,代表曹操逃出的位置,可以实现通过鼠标或者键盘移动界面上的按钮,最终使曹操移动到棋盘最下方,代表曹操逃出华容道。 目录一、课程设计任务及要求1二、需求分析2三、设计思路3四、详细设

6、计4五、运行调试与分析讨论14六、设计体会与小结16七、参考文献17一、课程设计任务及要求 1、 本程序主要练习使用布局管理器设计一个华容道游戏界面,并练习使用事件监听器(鼠标事件、键盘事件和焦点事件)实现按钮的移动。 2、编写一个按钮的子类,使用该子类创建的对象代表华容道中的人物。通过焦点事件控制人物颜色,当人物获得焦点时颜色为红色,当失去焦点时颜色为黄色。 3、通过键盘事件和鼠标事件来实现曹操、关羽等人物的移动。当人物上发生鼠标事件或键盘事件时,如果鼠标指针的位置是在人物的下方(也就是组件的下半部分)或按下键盘的“键,该人物向下移动。向左、向右和向上的移动原理类似。 4、点击“重新开始”可

7、以使各个按钮复位,重新开始游戏。二、需求分析要满足的容道游戏的基本操作:1 各人物按钮按相应的顺序和大小排列,按钮上标注人物名字,界面美观。2 通过焦点事件控制人物按钮的颜色,得到焦点呈红色,失去焦点为淡黄色。3 可以通过键盘控制各个按钮的移动:按“”键,人物按钮向下移动其它方向类似。4 可以通过鼠标点击来控制各个人物按钮的移动:如果点击的位置在按钮的上半部分则向上移动,如果点击按钮的下半部分则向下,左右原理类似。5 有“重新开始按钮” 点击重新开始按钮各个人物按钮复位,能重新开始游戏。6 小程序能够自由的缩小,放大,关闭。三、设计思路 1.首先是界面设计,该界面主要包括十个人物按钮(马、曹操

8、、关羽等)以及旁边的四个边框按钮和重新开始按钮。对于人物按钮,创建Button按钮的子类,在该类中定义按钮的一些新的属性和焦点事件监听器,如:按钮的标签名、按钮的颜色、按钮的排号(如这里有十个人物按钮,从1排到十,在程序中可以依靠这个属性区分人物按钮)、按钮颜色、按钮获得或失去焦点事件。同时在设计该界面时要考虑到各个按钮的位置、大小等情况。 2.对界面上的各人物按钮添加相应的相应事件焦点事件:通过焦点事件各个按钮的是焦点。鼠标事件、键盘事件:通过这两种事件去完成界面上各人物按钮的移动。对重新开始按钮定义动作事件(ActionEvent)完成界面初始化功能也 就是各人物按钮重新归位。四、详细设计

9、1.类的设计本程序总共有3个类(1)MoveExample 类public class MoveExample public static void main(String args)/定义主方法 new Hua_Rong_Road();/创建一个Hua_Rong_Road对象 (2)Person 类 增加焦点事件监视器:addFocusListener(事件监听器)当组件具有焦点监视器后,如果组件从无输入焦点变成有输入焦点或从有输入焦点到无输入焦点都会触发FocusEvent事件。创建监视器的类必须要实现FocusListener接口,该接口有两个方法:public void focusGa

10、ined(final FocusEvent e) /获得焦点触发public void focusLost(final FocusEvent e) /失去焦点触发当组件从无输入焦点变成有输入焦点并触发FocusEvent事件时,监视器调用类实现的接口方法focusGained(FocusEvent e);当组件从有输入焦点变成无输入焦点并触发FocusEvent事件时,监视器调用类实现方法focusLost(FocusEvent e)。 class Person extends Button implements FocusListener int number; Color c=new Co

11、lor(255,245,170);/设置颜色/preson 方法 public Person(final int number,final String s) super(s); setBackground(c);/背景色 this.number=number; c=getBackground(); addFocusListener(this);/事件焦点监听 public void focusGained(final FocusEvent e) /获得焦点触发 setBackground(Color.red);/获得焦点的颜色 public void focusLost(final Focu

12、sEvent e) /失去焦点触发 setBackground(c); (3)Hua_Rong_Road 类 游戏界面主要包括十个人物按钮马、曹操、关羽等。对于人物按钮,在该类中定义按钮的一些新的属性和焦点事件监听器,如:按钮的标签名、按钮的颜色、按钮的排号(如这里有十个人物按钮,从1排到十,在程序中可以依靠这个属性区分人物按钮)、按钮颜色、按钮获得或失去焦点事件。同时在设计该界面时要考虑到各个按钮的位置、大小等情况。class Hua_Rong_Road extends Frame implements MouseListener,KeyListener,ActionListener Per

13、son person=new Person10; Button left,right,above,below; Button restart=new Button(重新开始);/添加重新开始按钮 Hua_Rong_Road()方法设置容器 public Hua_Rong_Road() init();/设置按钮 setBounds(100,100,320,360);/组件在容器上的起点和长宽 setVisible(true);/ 像控件中添加元素 validate();/刷新 addWindowListener(new WindowAdapter()/注册窗口事件监听 public void windowClosing(WindowEvent e)/关闭 System.exit(0); ); init()方法 设置10个按钮 public void init() setLayout(null);/设置布局默认 add(restart);/添加重新开始 restart.setBounds(100,320,120,25);/按钮大小 restart.addActionListener(this);/注册监听 String name=曹操,关羽,张飞,刘备,赵云,黄忠,兵 ,兵,兵,兵; for(int k=0;kname.length;k+)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号