java图形界面五子棋源代码共享

您所在的位置:网站首页 4068标准 java图形界面五子棋源代码共享

java图形界面五子棋源代码共享

2023-12-02 21:52| 来源: 网络整理| 查看: 265

有自己的加入也有书本的代码,整合,需要的素材网上找的。

是人机对战,但是没有AI,所以这个五子棋游戏的玩法就有改变了,最短

时间内让电脑也就是白棋获胜就赢了。奋斗(供学习 纪念之用)

import javax.swing.*; import javax.imageio.*; import java.awt.event.*; import java.awt.image.*; import java.awt.*; import java.io.*; import java.util.concurrent.ThreadLocalRandom; public class Gobang2  { //下面三个位图分别代表棋盘,黑棋,白棋 BufferedImage table; BufferedImage black; BufferedImage white; //当鼠标移动时的选择框 BufferedImage selected; //定义棋盘的大小 private static int BOARD_SIZE=15; //定义棋盘宽,高多少个像素 private final int TABLE_WIDTH=500; private final int TABLE_HEIGHT=501; //定义棋盘坐标的像素值和棋盘数组之间的比率 private final int RATE=TABLE_WIDTH/BOARD_SIZE; //定义棋盘坐标的像素值和棋盘数组之间的偏移距离 private final int X_OFFSET=12; private final int Y_OFFSET=9; //定义一个二维数组来当棋盘 private int[][] board=new int[BOARD_SIZE][BOARD_SIZE]; //五子棋游戏窗口 JFrame f=new JFrame("星星*五子棋游戏        玩法:在最短时间内让白棋赢"); //五子棋游戏棋盘对应的Canvas组件 ChessBoard chessBoard=new ChessBoard(); //当前选中点的坐标 private int selectedX=-1; private int selectedY=-1;     private Font fontGameOver = new Font("宋体", Font.BOLD, 50); public void init()throws Exception {        ThreadLocalRandom rand= ThreadLocalRandom.current();        table=ImageIO.read(new File("board.jpg"));   black=ImageIO.read(new File("black.gif"));   white=ImageIO.read(new File("white.gif"));   selected=ImageIO.read(new File("select.gif"));   //把每个元素赋值为0代表没有棋子   for(int i=0;i=1&&board[x][y]==board[--x][--y])  {  count4++;  }  x=a;  y=b;           while(y=1&&board[x][y]==board[--x][--y])  {  count4++;  }  x=a;  y=b;           while(y=0) {                g.drawImage(selected,selectedX*RATE+X_OFFSET,   selectedY*RATE+Y_OFFSET,null); } //遍历数组,绘制棋子 for(int i=0;i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3