资源简介
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\ChessMainfr
文件 18276 2011-04-16 17:32 JAVA_CHESS\ChessMainfr
文件 11516 2011-04-16 17:32 JAVA_CHESS\ChessMainfr
文件 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
相关资源
- java全屏游戏及源代码
- java 潜艇游戏
- 24点游戏Java实现
- java实现发送短信验证码功能
- JavaWeb-学生在线选课系统
- 酒店管理系统JAVA源代码245552
- 图书管理系统-Java-大作业
- java swing 用户登录界面设计
- java编写的泡泡堂炸弹人单机双人源码
- Java斗地主带AI版
- 中文数字转成阿拉伯数字 java 实现
- 研究生录取系统 java Oracle
- JavaSE回顾总结狂神说java.xmind
- java课程设计保存计算过程的计算器
- 日历打卡小程序java
- 仿照植物大战僵尸java源码
- 个人信用卡管理系统毕业设计全套
- JAVA微商城平台系统源码
- 基于java的毕业生信息管理系统
- [数据结构Java版第4版][叶核亚][习题解
- 整套JAVA酒店管理系统源代码含设计文
- 基于Android的炸弹人游戏毕业设计
- 基于java的坦克大战游戏234736
- ModifiedJava6Install.pkg
- java 网上商城系统 毕业设计
- web项目-投票系统(java编写)
- java实现的水果忍者游戏
- 操作系统 生产者消费者问题 Java代码
- java课程设计游戏:急速飞行[绝不坑爹
- 计算机网络课设24分游戏 java
评论
共有 条评论