黑白棋源码


黑白棋软件,支持电脑对战,点击即可更换界面,实用简洁
资源截图
代码片段和文件信息
#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  2012-09-18 09:04  image
     文件       18030  2012-08-22 17:37  image1.jpg
     文件      354966  2012-09-04 19:41  image21.gif
     文件        7061  2010-04-25 15:04  imagelack.png
     文件      146283  2012-08-31 13:46  imagefengshu.jpg
     文件      166084  2012-08-31 13:48  imagegudian.jpg
     文件      123554  2012-08-31 14:10  imagem.jpg
     文件      309921  2012-08-31 14:06  imageqq.jpg
     文件      362545  2012-08-31 14:06  image
.jpg
     文件        3168  2012-09-03 08:56  imagesblack.bmp
     文件        3848  2012-09-03 09:05  imagessblack.bmp
     文件        4064  2012-09-03 09:06  imagesswhite.bmp
     文件        3012  2012-09-03 08:57  imageswhite.bmp
     文件       45568  2012-09-18 09:04  imageThumbs.db
     文件      287331  2012-08-31 14:07  imageu.jpg
     文件        7936  2010-04-25 15:01  imagewhite.png
     文件      287331  2012-08-31 14:07  imagey.jpg
     目录           0  2012-09-18 09:01  task_bw_chess
     目录           0  2012-09-18 09:02  task_bw_chess-build-desktop
     目录           0  2012-09-18 09:01  task_bw_chess-build-desktopdebug
     文件        7638  2012-09-09 18:16  task_bw_chess-build-desktopdebuglack_white_chess_res.o
     文件      365113  2012-09-11 20:09  task_bw_chess-build-desktopdebugchessboard.o
     文件      115665  2012-09-10 16:30  task_bw_chess-build-desktopdebugmain.o
     文件        2981  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_chessboard.cpp
     文件      129762  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_chessboard.o
     文件        4405  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_mygame.cpp
     文件      130408  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_mygame.o
     文件        2763  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_widget.cpp
     文件      127224  2012-09-10 16:32  task_bw_chess-build-desktopdebugmoc_widget.o
     文件      431535  2012-09-10 20:06  task_bw_chess-build-desktopdebugmygame.o
     文件     1848849  2012-09-11 20:09  task_bw_chess-build-desktopdebug ask_bw_chess.exe
............此处省略20个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)