收藏 分销(赏)

Java项目开发实战──五子棋游戏.ppt

上传人:仙人****88 文档编号:14760730 上传时间:2026-11-14 格式:PPT 页数:24 大小:211KB 下载积分:10 金币
下载 相关
Java项目开发实战──五子棋游戏.ppt_第1页
第1页 / 共24页
Java项目开发实战──五子棋游戏.ppt_第2页
第2页 / 共24页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第,24,章,Java,项目开发实战,五子棋游戏,系统概述,开发前的知识准备之一,Swing,编程,开发前的知识准备之二,显示窗体的类,ImageIO,开发前的知识准备之三,图形的绘制类,Graphics,游戏界面开发,绘制棋子,保存棋局,判断游戏胜负,处理屏幕闪烁问题,实现各个功能按钮,完整代码,24.1,系统概述,24.1.1,运行本系统,24.1.2,本系统的开发步骤,24.1.3,数据库表的准备,24.1.1,运行本系统,为,对本程序的功能有所了解,,,下面简述运行步骤,把光盘中的,“,finalch24FiveChessProject,”,目录复制到硬盘中,运行,Eclipse,,新建一个,Java,项目,本例命名为,“,WuZi,”,,勾选,“,从现有资源创建项目,”,复选项,并在,【,目录,】,文本框中输入,“,E:FiveChessProject,”,。然后单击,【,完成,】,按钮,在,包资源管理器,中依次选择,【,WuZi,】【,org.liky.game.test,】【,Test.java,】,右击该项然后选择,【,运行方式,】【,1 Java,应用程序,】,菜单项,后面就可以玩一玩该游戏,测试一下它的功能了,24.1.2,本系统的开发步骤,开发本程序的主要步骤为,新建项目,并新建一个测试类用于研究技术和创建五子棋窗体,新建一个类,FiveChessFrame,。大部分程序代码要在这个类中完成,测试代码,运行程序,24.1.3,五子棋游戏的功能,五子棋游戏的基本功能如下:,在单击鼠标时,在相应的位置显示棋子,自动判断游戏是否结束,是否黑方或白方已经胜利,对游戏时间进行设置,判断是否超出规定时间,24.1.4,主要技术,本程序主要用到以下,3,种技术:,Swing,编程,ImageIO,类的使用,图片的绘制,24.2,开发前的知识准备之一,Swing,编程,24.2.1,与窗体相关的类,JFrame,24.2.2,与对话框相关的类,JOptionPane,24.2.3,与监听鼠标相关的类,MouseListener,23.2,开发前的知识准备之一,Swing,编程,Swing,是一个用于开发,Java,应用程序用户界面的开发工具包。它以抽象窗口工具包,(AWT),为基础,使跨平台应用程序可以使用统一的外观风格。,Swing,开发人员只用很少的代码就可以利用,Swing,丰富、灵活的功能和模块化组件来创建优雅的用户界面,24.2.1,与窗体相关的类,JFrame,JFrame,是创建窗体的,swing,类,存在于,javax.swing.JFrame,包中。用来创建一个图形界面的原始窗口,1.,JFrame,中的主要方法如下,setVisible(),:设置窗体是否显示,setTitle(),:设置窗体标题,setSize(),:设置窗体大小,setLocation(),:设置窗体初始显示的位置,setResizable(),:设置窗体是否可以改变大小,24.2.1,与窗体相关的类,JFrame,2.,和,JFrame,相关的取得屏幕大小的方法如下:,Toolkit.getDefaultToolkit().getScreenSize().width,:取得当前屏幕的宽度,Toolkit.getDefaultToolkit().getScreenSize().height,:取得当前屏幕的高度,【,范例,24-1】,生成一个窗体并显示到屏幕上,在测试类文件,Test.Java,中输入以下代码,【,范例,24-2】,设置窗体的标题、位置和大小,在测试类文件,Test.Java,中输入以下代码,24.2.1,与窗体相关的类,JFrame,【范例24-3】使窗体不可调整大小,并且在关闭窗体时关闭应用程序,在测试类文件,Test.Java,中输入以下代码,【,范例,24-4】,得到当前屏幕的分辨率在测试类文件,Test.Java,中输入以下代码,【,范例,24-5】,把窗口放在屏幕的正中央,在测试类文件,Test.Java,中输入以下代码,【,范例,24-6】,把主窗体封装成一个类,24.2.2,与对话框相关的类,JOptionPane,在,Swing,编程中提供了,JOptionPane,类来实现类似,Windows,平台下的,MessageBox,的功能,【,范例,24-7】,测试由,JOptionPane,产生的各种对话框,在测试类文件,Test.Java,中输入以下代码,24.2.3,与监听鼠标相关的类,MouseListener,MouseListeneru,是一个接口。用于接收组件上“感兴趣”的鼠标事件(按下、释放、单击、进入或离开)的侦听器接口,【,范例,24-8】,测试,MouseListener,,在主窗口类文件,FiveChessFrame.java,中输入以下代码,24.2.4,确定鼠标坐标的类,MouseEvent,getX(),:得到鼠标的横向位置坐标,getY(),:得到鼠标的纵向位置坐标,24.3,开发前的知识准备之二,显示图片的类,ImageIO,ImageIO,类包含一些用来查找,ImageReader,和,ImageWriter,以及执行简单编码和解码的静态便捷方法,24.4,开发前的知识准备之三,图形的绘制类,Graphics,Java,语言中提供,绘制、着色操作功能的基类称作,java.awt.Graphics,,paint(),方法只有一个参数,该参数是,Graphics,类的实例。下面介绍几个程序用到的方法,drawString(),:绘制字符串,drawOval(),:绘制一个空心的圆形,fillOval(),:绘制一个实心的圆形,drawLine(),:绘制一条线,drawRect(),:绘制一个空心的矩形,fillRect(),:绘制一个实心的矩形,drawImage(),:绘制一个已经存在的图片,将一个图片直接显示到窗体,中,setColor(),:设置画笔的颜色,setFont(),:设置绘制文字的字体,24.5,游戏界面开发,计算棋盘中每一条线的间距:这里用的是19 X 19的围棋棋盘,总宽度为360象素,分成18份,每份是20象素,总高度同样为 360 象素,分成 18 份 ,每份是 20 象素,(详见代码),24.6,绘制棋子,在棋盘上的鼠标点击位置,显示一个棋子,黑子:一个实心的黑圆来表示,白子:一个空心的黑圆+一个实心的白圆来表示,repaint()方法:表示重新执行一次 paint()方法,(详见代码),24.7,保存棋局,保存之前下过的棋子,通过一个二维的数组来保存之前下过的所有棋子,(详见代码),24.8,判断游戏胜负,依据五子棋的基本游戏规则,判断是否有同一颜色的棋子连成 5 个完成了五子棋游戏的核心算法,这里可以把核心算法总结成一个灵活的方法,(详见代码),24.9,处理屏幕闪烁问题,双缓冲技术:用在手机游戏中用的是最多的,原因是手机的内存相对较小,屏幕闪烁问题比较明显,(详见代码),24.10,实现各个功能按钮,开始游戏:从新开始新的游戏,游戏设置:设置倒计时,游戏说明:用来说明游戏规则和操作,认输:表示某一方放弃游戏,投子认负,关于:用来显示程序的作者或编写单位的相关信息,退出:结束程序,(详见代码),24.11,完整代码,24.11.1,导入部分,24.11.2,属性设置,24.11.3,主类的构造函数,24.11.4 Paint,方法,24.11.5,监控鼠标,24.11.6,判断胜负,24.11.7,判断有几个棋子已经连接起来,24.11,完整代码,(本节详见代码),
展开阅读全文

开通  VIP、SVIP  下载更划算
下载10份以上建议开通 VIP 会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        关注我们

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服