91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2.52MB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發布日期: 2023-10-29
  • 語言: Java
  • 標簽: c++??qt??象棋??

資源簡介

這是一款基于qt開發的中國象棋,功能強大,可以移植到Android和IOS,可以直接運行,代碼清晰,可讀性強。

資源截圖

代碼片段和文件信息

#include?“Board.h“
#include?
#include?
#include?
#define?GetRowCol(__row?__col?__id)?\
????int?__row?=?_s[__id]._row;\
????int?__col?=?_s[__id]._col

Board::Board(QWidget?*parent)?:?Qframe(parent)
{
????this->_r?=?20;
????setMinimumSize(_r*18+1?_r*20+1);
????init(true);
}

Board::~Board()
{

}

void?Board::init(bool?bRedSide)
{
????for(int?i=0;?i<32;?++i)
????{
????????_s[i].init(i);
????}
????if(bRedSide)
????{
????????for(int?i=0;?i<32;?++i)
????????{
????????????_s[i].rotate();
????????}
????}

????_selectid?=?-1;
????_bRedTurn?=?true;
????_bSide?=?bRedSide;
????update();
}

void?Board::paintEvent(QPaintEvent?*)
{
????int?r?=?height()/20;
????_r?=?r;
????_off?=?QPoint(r+1?r+1);

????QPainter?p(this);
????p.setRenderHints(QPainter::Antialiasing?|?QPainter::TextAntialiasing);

????p.save();
????drawPlate(p);
????p.restore();

????p.save();
????drawPlace(p);
????p.restore();

????p.save();
????drawInitPosition(p);
????p.restore();

????p.save();
????drawStone(p);
????p.restore();
}

void?Board::drawStone(QPainter?&p)
{
????for(int?i=0;?i<32;?i++)
????{
????????drawStone(p?i);
????}
}

bool?Board::isDead(int?id)
{
????if(id?==?-1)return?true;
????return?_s[id]._dead;
}

void?Board::drawStone(QPainter?&p?int?id)
{
????if(isDead(id))?return;

????QColor?color;
????if(red(id))?color?=?Qt::red;
????else?color?=?Qt::black;

????p.setPen(QPen(QBrush(color)?2));

????if(id?==?_selectid)?p.setBrush(Qt::gray);
????else?p.setBrush(Qt::yellow);

????p.drawEllipse(cell(id));

????p.setFont(QFont(“system“?_r*1.2?700));
????p.drawText(cell(id)?name(id)?QTextOption(Qt::AlignCenter));
}

QString?Board::name(int?id)
{
????return?_s[id].name();
}

bool?Board::red(int?id)
{
????return?_s[id]._red;
}

void?Board::drawInitPosition(QPainter?&p?int?row?int?col)
{
????QPoint?pt?=?center(row?col);
????QPoint?off?=?QPoint(_r/6?_r/6);
????int?len?=?_r/3;

????QPoint?ptStart;
????QPoint?ptEnd;

????if(col?!=?0)
????{
????????/*?左上角?*/
????????ptStart?=?QPoint(pt.x()?-?off.x()?pt.y()?-?off.y());
????????ptEnd?=?ptStart?+?QPoint(-len?0);
????????p.drawLine(ptStart?ptEnd);
????????ptEnd?=?ptStart?+?QPoint(0?-len);
????????p.drawLine(ptStart?ptEnd);

????????/*?左下角?*/
????????ptStart?=?QPoint(pt.x()?-?off.x()?pt.y()?+?off.y());
????????ptEnd?=?ptStart?+?QPoint(-len?0);
????????p.drawLine(ptStart?ptEnd);
????????ptEnd?=?ptStart?+?QPoint(0?+len);
????????p.drawLine(ptStart?ptEnd);
????}

????if(col?!=?8)
????{
????????/*?右下角?*/
????????ptStart?=?QPoint(pt.x()?+?off.x()?pt.y()?+?off.y());
????????ptEnd?=?ptStart?+?QPoint(+len?0);
????????p.drawLine(ptStart?ptEnd);
????????ptEnd?=?ptStart?+?QPoint(0?+len);
????????p.drawLine(ptStart?ptEnd);

????????/*?右上角?*/
????????ptStart?=?QPoint(pt.x()?+?off.x()?pt.y()?-?off.y());
????????ptEnd?=?ptStart?+?QPoint(+len?0);
????????p.drawLine(ptStart?ptEnd);
????????ptEnd?=?ptStart?+?QPoint(0?-len);
????????p.drawLine(ptStart?ptEnd);
????}
}

void?Board::drawInitPosition(QPainter?&

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-05-10?15:52??Chess\
?????文件???????12075??2015-04-17?18:41??Chess\Board.cpp
?????文件????????2525??2015-04-17?18:41??Chess\Board.h
?????文件?????????375??2015-04-17?18:41??Chess\Chess.pro
?????文件????????3071??2015-05-10?15:52??Chess\Chess.pro.user
?????文件???????18421??2015-04-17?18:41??Chess\Chess.pro.user.18
?????文件?????????806??2015-04-17?18:41??Chess\ChooseDlg.cpp
?????文件?????????327??2015-04-17?18:41??Chess\ChooseDlg.h
?????文件?????????542??2015-04-17?18:41??Chess\CtrlPanel.cpp
?????文件?????????299??2015-04-17?18:41??Chess\CtrlPanel.h
?????文件?????????385??2015-04-17?18:41??Chess\main.cpp
?????文件????????1471??2015-04-17?18:41??Chess\MainWnd.cpp
?????文件?????????295??2015-04-17?18:41??Chess\MainWnd.h
?????文件?????????114??2015-04-17?18:41??Chess\MultiGame.cpp
?????文件?????????229??2015-04-17?18:41??Chess\MultiGame.h
?????文件????????2035??2015-04-17?18:41??Chess\NetGame.cpp
?????文件?????????715??2015-04-17?18:41??Chess\NetGame.h
?????文件????????4274??2015-04-17?18:41??Chess\SingleGame.cpp
?????文件?????????585??2015-04-17?18:41??Chess\SingleGame.h
?????文件??????????91??2015-04-17?18:41??Chess\Step.cpp
?????文件?????????304??2015-04-17?18:41??Chess\Step.h
?????文件????????1339??2015-04-17?18:41??Chess\Stone.cpp
?????文件?????????351??2015-04-17?18:41??Chess\Stone.h
?????文件?????2851794??2015-04-17?18:56??PC游戲編程(人機博弈).pdf

評論

共有 條評論