资源简介

实现了人人,人机对战;具有悔棋,托管,跳出,重开,投降等功能;精致的UI设计;搜索式算法设计;

资源截图

代码片段和文件信息

#include “chessboard.h“
#include “ui_chessboard.h“
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

int page = 0;                      //三维数组的第一个参数(全局变量)

//====================================================================================
//构造函数
//====================================================================================
ChessBoard::ChessBoard(QWidget *parent) :
    QWidget(parent)
    ui(new Ui::ChessBoard)
{
    init();                        //构造函数初始化
}


//=====================================================================================
//静态变量定义区
//=====================================================================================
int ChessBoard::flag = 0;
int ChessBoard::loop = 0;
int ChessBoard::black_eat_num = 0;
int ChessBoard::white_eat_num = 0;
int ChessBoard::a =0;
int ChessBoard::b =0;
int ChessBoard::c = 0;
int ChessBoard::row = 0;
int ChessBoard::col = 0;
int ChessBoard::color_flag = 0;


//===================================================================================
//函数的原型:  init()
//函数的功能:构造函数初始化
//函数的调用:在构造函数中调用
//===================================================================================
void ChessBoard::init()
{
    ui->setupUi(this);
    this->setMouseTracking(true);           //加上这句话,就不必要按下鼠标才能判断移动坐标.
    this->startX =0;                        //初始化x和y的值
    point.setX(-1);
    point.setY(-1);

    this->setCursor(QCursor(QPixmap(“../image/ssblack.bmp“)));
                                            //设置鼠标点击前,出现黑子

    for(a=0;a<8;a++)                        //给二维数组赋初值
    {
        for(b=0;b<8;b++)
        {
            chess[a][b] = 2;
        }
    }
    count_black = 0;                        //初始化
    count_white = 0;                        //初始化
    show_mid_fourchess();                   //调用函数打印出棋盘中间四格的棋子

    for(a=0;a<8;a++)                        //将中间四颗棋子的位置赋给虚拟二维数组和三维数组
    {
        for(b=0;b<8;b++)
        {
            chess_regret[page][a][b] = chess_two[a][b] =  chess[a][b];
        }
    }
    ttime = new QTimer;
    ttime->start(10);                       //ms
    if(flag == 1)                           //当人机对战时,链接槽,实现timeout()就调用TTimer()函数
    {
        connect(ttimeSIGNAL(timeout())thisSLOT(TTimer()));
    }
}

//===================================================================================
//函数的原型:begin_chess()
//函数的功能:初始化棋盘
//函数的调用:在mygame.cpp里面重新开局按钮on_pushButton_start_again_clicked()里面被调用
//===================================================================================
void ChessBoard::begin_chess()              //初始化棋盘
{
    for(a=0;a<8;a++)                        //给二维数组赋初值
    {
        for(b=0;b<8;b++)
        {
            chess[a][b] = 2;
        }

    }
    count_black = 0;                        //初始化
    count_white = 0;                   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-10-25 10:07  精简版黑白棋\
     目录           0  2012-09-18 09:01  精简版黑白棋\demo\
     文件        7358  2012-09-09 18:12  精简版黑白棋\demo\black.ico
     文件          45  2012-09-09 18:13  精简版黑白棋\demo\black_white_chess.rc
     文件       22038  2012-09-11 11:09  精简版黑白棋\demo\chessboard.cpp
     文件        3165  2012-09-10 16:30  精简版黑白棋\demo\chessboard.h
     文件         404  2012-09-03 11:16  精简版黑白棋\demo\chessboard.ui
     文件        2567  2012-09-01 17:18  精简版黑白棋\demo\judge.cpp
     文件         396  2012-09-05 13:56  精简版黑白棋\demo\main.cpp
     文件       17337  2012-09-15 22:14  精简版黑白棋\demo\mygame.cpp
     文件        2165  2012-09-09 21:32  精简版黑白棋\demo\mygame.h
     文件       73577  2012-09-10 20:06  精简版黑白棋\demo\mygame.ui
     文件         553  2012-09-10 17:34  精简版黑白棋\demo\task_bw_chess.pro
     文件        5194  2012-09-05 11:58  精简版黑白棋\demo\widget.cpp
     文件         662  2012-09-05 10:33  精简版黑白棋\demo\widget.h
     文件       22793  2012-09-06 17:24  精简版黑白棋\demo\widget.ui
     目录           0  2012-09-18 09:04  精简版黑白棋\image\
     文件       18030  2012-08-22 17:37  精简版黑白棋\image\1.jpg
     文件      354966  2012-09-04 19:41  精简版黑白棋\image\21.gif
     文件        7061  2010-04-25 15:04  精简版黑白棋\image\black.png
     文件      146283  2012-08-31 13:46  精简版黑白棋\image\fengshu.jpg
     文件      166084  2012-08-31 13:48  精简版黑白棋\image\gudian.jpg
     文件      123554  2012-08-31 14:10  精简版黑白棋\image\m.jpg
     文件      309921  2012-08-31 14:06  精简版黑白棋\image\qq.jpg
     文件      362545  2012-08-31 14:06  精简版黑白棋\image\r.jpg
     文件        3168  2012-09-03 08:56  精简版黑白棋\image\sblack.bmp
     文件        3848  2012-09-03 09:05  精简版黑白棋\image\ssblack.bmp
     文件        4064  2012-09-03 09:06  精简版黑白棋\image\sswhite.bmp
     文件        3012  2012-09-03 08:57  精简版黑白棋\image\swhite.bmp
     文件       45568  2012-09-18 09:04  精简版黑白棋\image\Thumbs.db
     文件      287331  2012-08-31 14:07  精简版黑白棋\image\u.jpg
............此处省略21个文件信息

评论

共有 条评论