资源简介

JAVA开发的中国象棋(包括源码和需要的图片),很详细的,想用JAVA开发游戏的可以下载了学习下,该例子可以直接实用,好好学习下吧

资源截图

代码片段和文件信息

/*
 *中国象棋Java版V1.0
 *作者:王学峰
 *源文件:Chess.java
 *参考资料:http://www.codefans.net
 *最后修改时间:2010-1-02
 *添加功能:实现了当前棋局的保存
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
import java.io.*;

//主类
public class Chess{
public static void main(String args[]){
new ChessMainframe(“中国象棋:观棋不语真君子,棋死无悔大丈夫“);
}
}

//主框架类
class ChessMainframe extends Jframe implements ActionListenerMouseListenerRunnable{
//玩家
JLabel play[] = new JLabel[32];
//棋盘
JLabel image;
//窗格
Container con;
//工具栏
JToolBar jmain;
//重新开始
JButton anew;
//悔棋
JButton repent;
//退出
JButton exit;
//当前信息
JLabel text;

//保存当前操作
Vector Var;

//规则类对象(使于调用方法)
ChessRule rule;

/**
** 单击棋子
** chessManClick = true 闪烁棋子 并给线程响应
** chessManClick = false 吃棋子 停止闪烁  并给线程响应
*/
boolean chessManClick;

/**
** 控制玩家走棋
** chessPlayClick=1 黑棋走棋
** chessPlayClick=2 红棋走棋 默认红棋
** chessPlayClick=3 双方都不能走棋
*/
int chessPlayClick=2;

//控制棋子闪烁的线程
Thread tmain;
//把第一次的单击棋子给线程响应
static int Mani;

ChessMainframe(){
new ChessMainframe(“中国象棋“);
}

/**
** 构造函数
** 初始化图形用户界面
*/
ChessMainframe(String title){
//获行客格引用
con = this.getContentPane();
con.setLayout(null);
//实例化规则类
rule = new ChessRule();
Var = new Vector();

//创建工具栏
jmain = new JToolBar();
text = new JLabel(“欢迎使用象棋对弈系统“);
//当鼠标放上显示信息
text.setToolTipText(“信息提示“);
anew = new JButton(“ 新 游 戏 “);
anew.setToolTipText(“重新开始新的一局“);
exit = new JButton(“ 退  出 “);
exit.setToolTipText(“退出象棋程序程序“);
repent = new JButton(“ 悔  棋 “);
repent.setToolTipText(“返回到上次走棋的位置“);

//把组件添加到工具栏
jmain.setLayout(new GridLayout(04));
jmain.add(anew);
jmain.add(repent);
jmain.add(exit);
jmain.add(text);
jmain.setBounds(0055830);
con.add(jmain);

//添加棋子标签
drawChessMan();

//注册按扭监听
anew.addActionListener(this);
repent.addActionListener(this);
exit.addActionListener(this);

//注册棋子移动监听
for (int i=0;i<32;i++){
con.add(play[i]);
play[i].addMouseListener(this);
}

//添加棋盘标签
con.add(image = new JLabel(new ImageIcon(“image\\Main.GIF“)));
image.setBounds(030558620);
image.addMouseListener(this);

//注册窗体关闭监听
this.addWindowListener(
new WindowAdapter() {
public void windowClosing(WindowEvent we){
System.exit(0);
}
}
);

//窗体居中
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();

if (frameSize.height > screenSize.height){
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width){
frameSize.width = screenSize.width;
}

this.setLocation((screenSize.width - frameSize.width) / 2 - 280 (screenSize.height - frameSize.height ) / 2 - 350);

//设置
this.setIconImage(new ImageIcon(“image\\红将.GIF“).getImage());
this.setResizable(false);
this.settitle(Tit

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        389  2011-04-16 17:32  JAVA_CHESS\Chess.class

     文件      62919  2011-04-16 17:32  JAVA_CHESS\Chess.java

     文件        534  2011-04-16 17:32  JAVA_CHESS\ChessMainframe$1.class

     文件      18276  2011-04-16 17:32  JAVA_CHESS\ChessMainframe$ChessRule.class

     文件      11516  2011-04-16 17:32  JAVA_CHESS\ChessMainframe.class

     文件     204100  2011-04-16 17:32  JAVA_CHESS\image\main.gif

     文件       2509  2011-04-16 17:32  JAVA_CHESS\image\红卒.gif

     文件       2509  2011-04-16 17:32  JAVA_CHESS\image\红士.gif

     文件       2545  2011-04-16 17:32  JAVA_CHESS\image\红将.gif

     文件       2576  2011-04-16 17:32  JAVA_CHESS\image\红炮.gif

     文件       2507  2011-04-16 17:32  JAVA_CHESS\image\红象.gif

     文件       2492  2011-04-16 17:32  JAVA_CHESS\image\红车.GIF

     文件       2549  2011-04-16 17:33  JAVA_CHESS\image\红马.gif

     文件       2549  2011-04-16 17:33  JAVA_CHESS\image\黑卒.gif

     文件       2494  2011-04-16 17:33  JAVA_CHESS\image\黑士.gif

     文件       2598  2011-04-16 17:33  JAVA_CHESS\image\黑将.gif

     文件       2613  2011-04-16 17:33  JAVA_CHESS\image\黑炮.gif

     文件       2568  2011-04-16 17:33  JAVA_CHESS\image\黑象.gif

     文件       2485  2011-04-16 17:33  JAVA_CHESS\image\黑车.gif

     文件       2560  2011-04-16 17:33  JAVA_CHESS\image\黑马.gif

     文件     609792  2012-08-25 13:14  JAVA_CHESS\学习报告.doc

     目录          0  2011-04-20 10:40  JAVA_CHESS\image

     目录          0  2012-08-25 13:14  JAVA_CHESS

----------- ---------  ---------- -----  ----

               943080                    23


评论

共有 条评论