欢迎来到天天文库
浏览记录
ID:39885727
大小:100.50 KB
页数:11页
时间:2019-07-14
《java五子棋人机》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、介绍:这是一款很简单的人机对战五子棋,只实现了简单的防守功能,适合刚开始设计五子棋的朋友参考。程序执行结果:框架程序:packagewuziqi;importjava.awt.BorderLayout;importjava.awt.Color;importjavax.swing.JFrame;/***五子棋*/publicclassMainFrameextendsJFrame{publicstaticvoidmain(String[]args){MainPanelpanel=newMainPanel();MainFrame
2、frame=newMainFrame("五子棋");frame.setSize(680,680);panel.setBackground(Color.LIGHT_GRAY);frame.add(panel,BorderLayout.CENTER);panel.addMouseListener(panel);frame.setVisible(true);frame.setDefaultCloseOperation(3);frame.setLocationRelativeTo(null);}publicMainFrame(){
3、super();}publicMainFrame(Stringstr){super(str);}}面板设计:packagewuziqi;importjava.awt.*;importjava.awt.event.MouseEvent;importjava.awt.event.MouseListener;/***JFrame中的层次分布及相对关系是:最底层是:JRootPane;*第二层是:JlayerPane;最上层就是ContentPane,也正是我们常说的内容面板。*所以一般我们拖放的控件就是在ContentPane层
4、上。*/importjavax.swing.JOptionPane;/***五子棋的面板设计*/publicclassMainPanelextendsPanelimplementsMouseListener{privatestaticfinalintCOLUMN=16;//列数privatestaticfinalintROW=16;//行数privatestaticfinalintGAP=40;//间距privatestaticbooleanisBlack=true;//判断是否是黑棋privatestaticintcli
5、ck_X;//点击时候的x坐标privatestaticintclick_Y;//点击时候的y坐标privatechar[][]allChess=newchar[ROW][COLUMN];//存下了旗子的位置publicMainPanel(){super();for(inti=0;i6、**画棋盘要放在paint(Graphicsg)里面***************/publicvoidpaint(Graphicsg){for(inti=0;i7、40-20);//棋盘间隔分布}//画棋子w表示白棋b表示黑棋for(inti=0;i8、or.BLACK);g.fillOval(5+i*40,5+j*40,30,30);}}}}//判断黑棋是否已经有连续连在一起了,有则开始拦截publicvoidisCon(intx,inty){charch=allChess[x][y];/*横向判断*/intRLastX=x;//横向判断有多少个连在
6、**画棋盘要放在paint(Graphicsg)里面***************/publicvoidpaint(Graphicsg){for(inti=0;i7、40-20);//棋盘间隔分布}//画棋子w表示白棋b表示黑棋for(inti=0;i8、or.BLACK);g.fillOval(5+i*40,5+j*40,30,30);}}}}//判断黑棋是否已经有连续连在一起了,有则开始拦截publicvoidisCon(intx,inty){charch=allChess[x][y];/*横向判断*/intRLastX=x;//横向判断有多少个连在
7、40-20);//棋盘间隔分布}//画棋子w表示白棋b表示黑棋for(inti=0;i8、or.BLACK);g.fillOval(5+i*40,5+j*40,30,30);}}}}//判断黑棋是否已经有连续连在一起了,有则开始拦截publicvoidisCon(intx,inty){charch=allChess[x][y];/*横向判断*/intRLastX=x;//横向判断有多少个连在
8、or.BLACK);g.fillOval(5+i*40,5+j*40,30,30);}}}}//判断黑棋是否已经有连续连在一起了,有则开始拦截publicvoidisCon(intx,inty){charch=allChess[x][y];/*横向判断*/intRLastX=x;//横向判断有多少个连在
此文档下载收益归作者所有