- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《课程设计报告拼图游戏
编号:
《Java程序设计》课程设计报告
题 目 : 拼图游戏
姓 名 :
学 号 :
班 级 :
2013年 12 月 10 日
题目意义和设计思想
题目意义
该游戏是由一副小男孩为主体的拼图小游戏,这个游戏是一个益智休闲的小游戏。该类似的小游戏在我们成长的过程中,曾经疯狂的流行着,这是一个老少皆宜的小游戏,它开发人们的智力,加强我们的动手能力和我们的眼睛的洞察力。该游戏简单方便易操作是一个很好的小游戏,也是一个经久不衰的游戏,在我们这代人中,可谓每个人都玩过这种类似的小游戏,简单易操作是其一直存在的原因之一。
游戏由简单的界面组成的,操作简单,该图像块是由16块小的小图像块构成的,其中有一个空白的小图像块,该图像块是来与别的图像块交换的,以此来实现大图像的拼凑。游戏重要的部分是将分割图像与被分割图像通过随机摆放起来。
通过java标准环境下运行,实现通过小的图像块的移动实现大的图像的拼凑。通过改变鼠标的位置选取小的图像块,通过移动鼠标实现小图像的移动,使小图像块能够上下左右的移动从而完成大图像的拼凑的完成。
设计思想
1.主体功能
用户通过java标准环境下运行,实现通过小的图像块的移动实现大的图像的拼凑。
通过改变鼠标的位置选取小的图像块,通过移动鼠标或键盘实现小图像的移动,使小图像块能够上下左右的移动从而完成大图像的拼凑的完成。
2.系统目标
· 系统界面的左上侧是“新游戏”的按钮。鼠标单击“新游戏”按钮时,会开始新的游戏,大图像会分成16个错综复杂的小图像块。通过移动小图像块来实现拼凑大的图像。
· 界面的右上侧是“继续游戏”的按钮 ,鼠标单击“继续游戏”按钮时,会继续游戏,但是是出现新的小图像块的分布。
·界面的下面的部分是一副大的图像,通过使用鼠标或键盘选取小图像块,通过移动鼠标和键盘来移动小图像块的位置,以实现大图像块的拼凑,使游戏能过胜利。
3.模块设计
PPuzzle模块是主类,负责很多的变量的赋值;
init添加组件并初始化各种资源;
prepareImage模块负责加载图像,创建缓冲区并获取缓冲区的Graphics对象;
initMap模块负责初始化scree,创建screen对象并覆盖paint()方法,注册时间监听接口;
initButtons模块负责创建按钮并做事件处理;
drawscreen模块负责绘制图画,将全部图像绘制在screen中;
drawSegment模块负责将第seg个图像块绘制在(x,y)位置处。
二、采用的主要技术、遇到的难点和解决方法
1、 采用的主要技术
(1)该游戏的设计:用户界面包括游戏所用的图片使用prepareImaga来加载图像,和
initMap来创建screen对象并覆盖pain方法,注册时间监听接口和initButton来创建两个按钮。
(2)界面还有Boolean running=false为标识游戏进行状态的变量,若running为真,则表明游戏正在进行中。Button bStart=new Button(“新游戏”)为新游戏按钮,若点击此按钮,则开始游戏。Button bSee=new Button(“显示正确的图像”)为此按钮具有“显示正确的图像”与“继续游戏”两种功能。
(3)程序设计中,使用了获得被点击的图像块编号及位置,例把第五个图像块移到第十五个图像块的位置:
public void mousePressed(MouseEvent me){
if(!running)return;
int(x=me.getX()/sx,y=me.getY()sy;
if(Math.abs(fx-x)+Mach.abs(fy-y)=2)return;
if(map[x][y]==15)return;
map[fx][fy]=map[x][y];
map[x][y]=15;
fifteen.setLocation(x,y);
drawScreen();
}
遇到的难点和解决方法
在程序中运行的过程中,遇到了安装java的软件的困难,不知道怎么使用总是出现错误,通过同学和老师的指导解决了这个问题。编码中也出现了很多的问题,如编码错误,通过一次又一次的调试和修改,终于把程序给纠正,还有出现图像的时候,出现了错误通过对源程序的修改,才能使图像可以移动。
三、实现的主要功能和系统结构
1、创建主类PPuzzle控制整个程序的调控与连接,该类负责整个程序的变量和方法的调用,程序从该类开始执行。并创建init、prepareImage、initMap、nitButtons、
您可能关注的文档
- 《读书札记——看得见风景的房间.doc
- 《读书:教师专业成长的必由之路.doc
- 《读吴晓波大败局有感.doc
- 《读拉伦茨法学方法论有感排版后.docx
- 《读金融炼金术有感.doc
- 《课件制作方法及常见问题的探讨.doc
- 《课件设计特点.doc
- 《课后作业16.doc
- 《课堂句子翻译练习.doc
- 《课堂教学创新.doc
- 云南省农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)附答案详解(完整版).docx
- 内蒙古自治区农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解(实用).docx
- 台南市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及参考答案详解.docx
- 台北县农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解ab卷.docx
- 宜宾市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及完整答案详解一套.docx
- 台北市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)精选答案详解.docx
- 2026年韶关市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及一套参考答案详解.docx
- 内江市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解1套.docx
- 丰都县农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解ab卷.docx
- 南充市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解(精选题).docx
最近下载
- 城市生命线解决方案.docx VIP
- 《建筑工程催款函》.docx VIP
- 重庆小升初数学测试题.doc VIP
- SL 317-2015 泵站设备安装及验收规范(含条文说明).pdf VIP
- 第二单元+第7课+域名解析换编码+课件+2025-2026学年人教版(2024)初中信息科技七年级上册+.pptx VIP
- 道德与法治四年级上册第一单元与班级共成长大单元整体学历案教案教学设计附作业设计(基于新课标教学评一致性).pptx VIP
- 附件04水文气象勘测报告.pdf VIP
- 沪教牛津版小学四至六年级英语单词表.doc VIP
- ISO9001、ISO14001、ISO45001三标一体内部审核检查表.pdf VIP
- GB50502-2009建筑施工组织设计规范.docx VIP
原创力文档


文档评论(0)