- 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语言贪吃蛇小游戏.doc
2010~2011年度 第2学期
考核题目:贪吃蛇小游戏
院系: 计算机学院
学号: AP0906完成日期:201年6月27日javax.swing.JButton(蛇身体的设计)
蛇身由一个个JButton连续相连组成,通过定义蛇身body为ListJButton类型,把JButton添加到body上,形成类似蛇的身体。
同时,食物也是一个JButton,当蛇吞食了JButton后,只要把JButton也添加到body上,就可以达到蛇生长的效果。
如:
public She(Map map){ //在地图中的蛇
this.map=map; //蛇引入地图
JButton jl = new JButton(); //新建一个按钮j1
jl.setBounds(0, 200, 5, 5); //设置j1的位置 大小
this.body.add(jl); //蛇的身体添加按钮j1
this.add(); //蛇身再添加j1(下面操作一样,共添加5次j1,让初始蛇身有5个按钮的长度,看起来像蛇)
this.add();
this.add(); //List接口中的add(E e)方法:向列表的尾部添加指定的元素(非awt的方法)
this.add();
}
//蛇身体
public ListJButton body = new ArrayListJButton(); //利用 ArrayList 类实例化 List 集合
import javax.swing.JFrame
JFrame.setDefaultLookAndFeelDecorated(true)
setDefaultCloseOperation(EXIT_ON_CLOSE)
创建出一个图形化的,有美丽边框的,可关闭的图形化界面
3.javax.swing.JOptionPane
javax.swing.JMenuBar
javax.swing.JMenu
javax.swing.JMenuItem
javax.swing.JRadioButtonMenuItem
javax.swing.JCheckBoxMenuItem
在JFrame框架的菜单栏上,添加了菜单,菜单项,复选框,单选框
如:
JMenuBar menubar = new JMenuBar(); //新建菜单条
this.setJMenuBar(menubar); //往Map中添加菜单条 menubar
JMenu menu1 = new JMenu(帮助(A)); //新建菜单 menu1并起标题名 帮助(A)
menu1.setMnemonic(KeyEvent.VK_A); //设置菜单 menu1 热键
menubar.add(menu1); //菜单条menubar中 添加 菜单menu1
4.java.awt.Point
java.awt.event.KeyEvent
java.awt.event.KeyListener
java.awt.event.ActionEvent
java.awt.event.ActionListener
监听键盘上的up down left right键,并通过动作事件来控制蛇的运动方向
如:
//键盘监听
class KeyEve implements KeyListener {
public void keyPressed(KeyEvent e) {
she.gbFangXiang(e);
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
6. java.util.ArrayList
java.util.List
java.util.Random
实现一种可以把JButton相连接,想数组一样动态变化的类型
7.多线程
让蛇和地图实现Runnable接口,构建两个线程类,并为它们创建新线程tm和t,实现两线程的交替控制
如:
public void init(){
this.setFocusable(true); //setFocusable(true) 触键获焦点
She s = new She(this); // 初始化蛇(新建蛇,调用另一边蛇构造方法),this指地图
this.she = s; //把新建的蛇,放在地图上吃食物
Thread tm=new Thread(this); //新建属于this(地图)的,名字为tm的线程
tm.start();
Thread t = new Threa
您可能关注的文档
- 基于幼儿生活的“小眼睛大世界” 科学探究活动的实践研究.doc
- “红桥区骨干教师送课到第四学区”活动——校长、主任评课 恰如其分的点评。这就是语文的味道,这就是智慧的课堂!这节课飞.doc
- 【最新精选】2016陕西省高考网上报志愿内容表格免费下载.doc
- 输血不良反应处理及汇报制度.docx
- 2009款上汽荣威R550整车原厂维修手册(下册)(可编辑).doc
- 慈母情深优秀教学设计(共篇)(精简版).doc
- 护理会诊一般在几小时内完成(最新版).doc
- 钢结构玻璃采光顶施工组织设计~(可编辑).doc
- 沉井顶管专项安全施工方案(可编辑).doc
- 脑瘫康复训练室教具项目.doc
- - 屈臣氏的目标市场选择 案例分析.doc
- 2017电大大学英语B(最全)网考内部辅导资料小抄.doc
- 、将乐安仁中心校综合楼屋面防水工程施工方案—聚乙烯丙纶复合防水卷材.doc
- 办公楼人脸识别门禁系统应用解决方案【最新精选】.doc
- 幼儿园学习擦桌子教案.doc
- 医学毕业论文--锁阳水提液对衰老模型小鼠肝线粒体能量代谢的影响.doc
- 2016中央电视台希望之星英语风采大赛市预赛试题(小高组)【可编辑】.doc
- 以孝为主题写给父母一封信.doc
- 2016-2017年不同类型的机组的各项小指标偏离标准值对热耗率和发电煤耗率的影响幅度分别见下表(总结).docx
- 2016年陕西快递业快速调查报告【最新】.doc
文档评论(0)