资源简介
实现了人人,人机对战;具有悔棋,托管,跳出,重开,投降等功能;精致的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个文件信息
相关资源
- 快乐的 Linux 命令行中英文PDF
- 基于Centos6.9+7.4主备DNS服务器搭建实战
- linux多线程编程书籍
- linux expect安装及expect,tcl安装包
- torchvision-0.5.0+cpu-cp36-cp36m-linux_x86_64.
- Orange pi PC(H3)移植linux总结
- Linux Wireless架构总结.pdf
- 博创2410开发板光盘资料---linux实验
- 互联网各厂运维方向面试题汇总附答
- Qt黑白棋项目源码
- LInux项目实战及程序员必备
- 部署Zabbix4.0监控系统.pdf
- 也许是世界上最快的iOS12 +代码签名替
- Linux网络体系结构:Linux内核中网络协
- The Linux Command Line 2nd Edition (True PDF)
- Linux_C编程一站式学习.高清.带书签.
- The Linux Command Line 2nd Edition 第二版正式
- 兄弟连细说Linux PDF 文档
- 华为4g模块 pcie me909s-821 linux驱动
- linux版flash插件
- qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm
- kali linux无线渗透(penetration test)
- Linux内核完全剖析基于0.11内核》--赵炯
- 深入理解linux内核架构英文版
- kiwi Syslog 8.3.7 破解版
- LPIC-1 study guide 2nd
- wine.deb Linux下的windows兼容工具
- Linux英文原版图书系列].OREILLY-High_Pe
- Linux多线程编程手册.pdf
- QT专业医疗界面仪器设计
评论
共有 条评论