欢迎来到天天文库
浏览记录
ID:39550131
大小:162.00 KB
页数:13页
时间:2019-07-06
《java五子棋程序代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、packageorg.liky.game.frame;importjava.awt.Color;importjava.awt.Font;importjava.awt.Graphics;importjava.awt.Toolkit;importjava.awt.event.MouseEvent;importjava.awt.event.MouseListener;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.IOException;i
2、mportjavax.imageio.ImageIO;importjavax.swing.JFrame;importjavax.swing.JOptionPane;publicclassFiveChessFrameextendsJFrameimplementsMouseListener,Runnable{/****///声明一个程序的最终常量,防止环境升级而不可用。privatestaticfinallongserialVersionUID=1L;//取得屏幕的宽度intwidth=Toolkit.getDefaultT
3、oolkit().getScreenSize().width;//取得屏幕的高度intheight=Toolkit.getDefaultToolkit().getScreenSize().height;//背景图片BufferedImagebgImage=null;//保存棋子的坐标intx=0;inty=0;//保存之前下过的全部棋子的坐标//其中数据内容0:表示这个点并没有棋子,1:表示这个点是黑子,2:表示这个点是白子int[][]allChess=newint[19][19];//标识当前应该黑棋还是白棋下下一步
4、booleanisBlack=true;//标识当前游戏是否可以继续booleancanPlay=true;//保存显示的提示信息Stringmessage="黑方先行";//保存最多拥有多少时间(秒)intmaxTime=0;//做倒计时的线程类Threadt=newThread(this);//保存黑方与白方的剩余时间intblackTime=0;intwhiteTime=0;//保存双方剩余时间的显示信息StringblackMessage="无限制";StringwhiteMessage="无限制";@Suppr
5、essWarnings("deprecation")publicFiveChessFrame(){//设置标题this.setTitle("五子棋");//设置窗体大小this.setSize(500,500);//设置窗体出现位置this.setLocation((width-500)/2,(height-500)/2);//将窗体设置为大小不可改变this.setResizable(false);//将窗体的关闭方式设置为默认关闭后程序结束this.setDefaultCloseOperation(JFrame.EX
6、IT_ON_CLOSE);//为窗体加入监听器this.addMouseListener(this);//将窗体显示出来this.setVisible(true);t.start();t.suspend();StringimagePath="";try{imagePath=System.getProperty("user.dir")+"/bin/image/background.jpg";bgImage=ImageIO.read(newFile(imagePath.replaceAll("\\","/")));}ca
7、tch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}//刷新屏幕,防止开始游戏时出现无法显示的情况.this.repaint();}publicvoidpaint(Graphicsg){//双缓冲技术防止屏幕闪烁BufferedImagebi=newBufferedImage(500,500,BufferedImage.TYPE_INT_RGB);Graphicsg2=bi.createGraphics();g2.setColor(Co
8、lor.BLACK);//绘制背景g2.drawImage(bgImage,1,20,this);//输出标题信息g2.setFont(newFont("黑体",Font.BOLD,20));g2.drawString("游戏信息:"+message,130,60);//输出时间信息g2.setFont(newFon
此文档下载收益归作者所有