欢迎来到天天文库
浏览记录
ID:52335550
大小:978.55 KB
页数:53页
时间:2020-03-26
《java 中国象棋代码.pdf》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、/**中国象棋Java版V3.0*作者*源文件:Chess.java*最后修改时间:2005-8-20*添加功能:实现了当前棋局的保存*/importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.util.*;importjava.io.*;//主类publicclassChess{publicstaticvoidmain(Stringargs[]){newChessMainFrame("中国象棋:观棋不语真君子,棋死无悔大丈夫");}}//主框架类c
2、lassChessMainFrameextendsJFrameimplementsActionListener,MouseListener,Runnable{//玩家JLabelplay[]=newJLabel[32];//棋盘JLabelimage;//窗格Containercon;//工具栏JToolBarjmain;//重新开始JButtonanew;//悔棋JButtonrepent;//退出JButtonexit;//当前信息JLabeltext;//保存当前操作VectorVar;//规则类对象(使于调用方法)ChessR
3、ulerule;/****单击棋子**chessManClick=true闪烁棋子并给线程响应**chessManClick=false吃棋子停止闪烁并给线程响应*/booleanchessManClick;/****控制玩家走棋**chessPlayClick=1黑棋走棋**chessPlayClick=2红棋走棋默认红棋**chessPlayClick=3双方都不能走棋*/intchessPlayClick=2;//控制棋子闪烁的线程Threadtmain;//把第一次的单击棋子给线程响应staticintMan,i;ChessM
4、ainFrame(){newChessMainFrame("中国象棋");}/****构造函数**初始化图形用户界面*/ChessMainFrame(StringTitle){//获行客格引用con=this.getContentPane();con.setLayout(null);//实例化规则类rule=newChessRule();Var=newVector();//创建工具栏jmain=newJToolBar();text=newJLabel("欢迎使用象棋对弈系统");//当鼠标放上显示信息text.setToolTipTe
5、xt("信息提示");anew=newJButton("新游戏");anew.setToolTipText("重新开始新的一局");exit=newJButton("退出");exit.setToolTipText("退出象棋程序程序");repent=newJButton("悔棋");repent.setToolTipText("返回到上次走棋的位置");//把组件添加到工具栏jmain.setLayout(newGridLayout(0,4));jmain.add(anew);jmain.add(repent);jmain.add
6、(exit);jmain.add(text);jmain.setBounds(0,0,558,30);con.add(jmain);//添加棋子标签drawChessMan();//注册按扭监听anew.addActionListener(this);repent.addActionListener(this);exit.addActionListener(this);//注册棋子移动监听for(inti=0;i<32;i++){con.add(play[i]);play[i].addMouseListener(this);}//添加
7、棋盘标签con.add(image=newJLabel(newImageIcon("image\Main.GIF")));image.setBounds(0,30,558,620);image.addMouseListener(this);//注册窗体关闭监听this.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventwe){System.exit(0);}});//窗体居中DimensionscreenSize=Toolkit.getDe
8、faultToolkit().getScreenSize();DimensionframeSize=this.getSize();if(frameSize.height>screenSize.height){frameS
此文档下载收益归作者所有