资源简介
基于qt实现的简易象棋,代码实现较为简单,适合新手学习qt
代码片段和文件信息
#include “chess.h“
#include “ui_chess.h“
#include
#include
using namespace std;
chess::chess(QWidget *parent) :
QWidget(parent)
ui(new Ui::chess)
{
ui->setupUi(this);
gameover=0;
turn=1;
Size=50;
pos=0;
win=0;
memset(mm-1sizeof(mm));
pp[0].kind=1;pp[0].x=4;pp[0].y=0;pp[0].red=1;mm[4][0]=0;
pp[1].kind=2;pp[1].x=3;pp[1].y=0;pp[1].red=1;mm[3][0]=1;
pp[2].kind=2;pp[2].x=5;pp[2].y=0;pp[2].red=1;mm[5][0]=2;
pp[3].kind=3;pp[3].x=2;pp[3].y=0;pp[3].red=1;mm[2][0]=3;
pp[4].kind=3;pp[4].x=6;pp[4].y=0;pp[4].red=1;mm[6][0]=4;
pp[5].kind=4;pp[5].x=1;pp[5].y=0;pp[5].red=1;mm[1][0]=5;
pp[6].kind=4;pp[6].x=7;pp[6].y=0;pp[6].red=1;mm[7][0]=6;
pp[7].kind=5;pp[7].x=0;pp[7].y=0;pp[7].red=1;mm[0][0]=7;
pp[8].kind=5;pp[8].x=8;pp[8].y=0;pp[8].red=1;mm[8][0]=8;
pp[9].kind=6;pp[9].x=1;pp[9].y=2;pp[9].red=1;mm[1][2]=9;
pp[10].kind=6;pp[10].x=7;pp[10].y=2;pp[10].red=1;mm[7][2]=10;
pp[11].kind=7;pp[11].x=0;pp[11].y=3;pp[11].red=1;mm[0][3]=11;
pp[12].kind=7;pp[12].x=2;pp[12].y=3;pp[12].red=1;mm[2][3]=12;
pp[13].kind=7;pp[13].x=4;pp[13].y=3;pp[13].red=1;mm[4][3]=13;
pp[14].kind=7;pp[14].x=6;pp[14].y=3;pp[14].red=1;mm[6][3]=14;
pp[15].kind=7;pp[15].x=8;pp[15].y=3;pp[15].red=1;mm[8][3]=15;
pp[16].kind=1;pp[16].x=4;pp[16].y=9;pp[16].red=-1;mm[4][9]=16;
pp[17].kind=2;pp[17].x=3;pp[17].y=9;pp[17].red=-1;mm[3][9]=17;
pp[18].kind=2;pp[18].x=5;pp[18].y=9;pp[18].red=-1;mm[5][9]=18;
pp[19].kind=3;pp[19].x=2;pp[19].y=9;pp[19].red=-1;mm[2][9]=19;
pp[20].kind=3;pp[20].x=6;pp[20].y=9;pp[20].red=-1;mm[6][9]=20;
pp[21].kind=4;pp[21].x=1;pp[21].y=9;pp[21].red=-1;mm[1][9]=21;
pp[22].kind=4;pp[22].x=7;pp[22].y=9;pp[22].red=-1;mm[7][9]=22;
pp[23].kind=5;pp[23].x=0;pp[23].y=9;pp[23].red=-1;mm[0][9]=23;
pp[24].kind=5;pp[24].x=8;pp[24].y=9;pp[24].red=-1;mm[8][9]=24;
pp[25].kind=6;pp[25].x=1;pp[25].y=7;pp[25].red=-1;mm[1][7]=25;
pp[26].kind=6;pp[26].x=7;pp[26].y=7;pp[26].red=-1;mm[7][7]=26;
pp[27].kind=7;pp[27].x=0;pp[27].y=6;pp[27].red=-1;mm[0][6]=27;
pp[28].kind=7;pp[28].x=2;pp[28].y=6;pp[28].red=-1;mm[2][6]=28;
pp[29].kind=7;pp[29].x=4;pp[29].y=6;pp[29].red=-1;mm[4][6]=29;
pp[30].kind=7;pp[30].x=6;pp[30].y=6;pp[30].red=-1;mm[6][6]=30;
pp[31].kind=7;pp[31].x=8;pp[31].y=6;pp[31].red=-1;mm[8][6]=31;
}
chess::~chess()
{
delete ui;
}
void chess::paint(int id)
{
if(pp[id].dead)return ;
QPainter painter(this);
painter.setBrush(Qt::yellow);
painter.setFont(QFont(“Timers“26QFont::Bold));
painter.drawEllipse(100-Size/2+pp[id].x*Size100-Size/2+pp[id].y*SizeSizeSize);
string ss;
if(pp[id].red==1)
{
if(pp[id].kind==1)ss=“帅“;
else if(pp[id].kind==2)ss=“仕“;
else if(pp[id].kind==3)ss=“相“;
else if(pp[id].kind==4)ss=“馬“;
else if(pp[id].kind==5)ss=“車“;
else if(pp[id].kind==
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-07-23 19:08 xiangqi\
文件 10028 2017-07-23 19:08 xiangqi\chess.cpp
文件 689 2017-07-13 23:24 xiangqi\chess.h
文件 2278 2017-07-13 23:30 xiangqi\chess.ui
文件 173 2017-07-12 20:39 xiangqi\main.cpp
文件 1713444 2017-07-11 09:17 xiangqi\p.png
文件 3608 2017-07-13 22:48 xiangqi\piece.cpp
文件 366 2017-07-13 22:13 xiangqi\piece.h
文件 1099 2017-07-13 23:32 xiangqi\xiangqi.pro
文件 123928 2017-07-23 19:08 xiangqi\xiangqi.pro.user
文件 100 2017-07-13 23:33 xiangqi\xx.qrc
- 上一篇:测地距离—来自science杂志
- 下一篇:捷联惯导算法与组合导航原理讲义-严恭敏
相关资源
- 3DChess(立体中国象棋
- 闹奥象棋引擎 十分强大
- 基于ARM9的远程视频监控系统
- 基于QT的音乐播放器源代码及详细教程
- 有关Qt的二十篇中文论文
- 一款强大的软件象棋奇兵
- 使用Qt编写的视频监控系统支持Qt4-Q
- 用QT读取Excel文件并将数据在界面上动
- QT使用Cypress FX3 USB库代码
- Qt 多线程连接数据库——数据库
- MQTTv3.1中文版
- mt7628 mqtt功能 放到packet下面就可以使
- Qt编写GIF录屏工具
- Qt实现PDF阅读器
- 使用Qt开发NFC应用.pdf
- MQTT-1.zip
- 海康相机SDK二次开发与Qt混合编程代码
- Qt和百度地图交互
- 第6章:Qtopia Core应用程序设计.ppt
- 基于Qt和mupdf的PDF阅读器
- QT桌面精灵
- 基于Qt5.8+OpenCV3.2的Basler多相机触发开
- halcon中使用一种新思路来模板匹配的
- Qt之FTP客户端
- Qt开机唤醒狩猎者
- 基于qt的udp实时录音
- qt 图标资源文件
- 用Qt绘制柱状图
- QT 4.8.4 64位版本-2
- 串口调试助手 Qt5版源码
评论
共有 条评论