资源简介
基于QT的扫雷游戏,含有自定义,初级,高级等多种可选游戏模式,并且设有定时器,一到设定时间游戏结束
代码片段和文件信息
#include “cell.h“
#include “mapmodel.h“
#include “mapcontrol.h“
#include “mapview.h“
cell::cell(int c_x int c_y)
: QGraphicsPixmapItem()
cx(c_x)
cy(c_y)
pressed(false)
number(0)
{
setPixmap(QPixmap(“:/photo/unknown.jpg“));
}
int cell::total=0;
//void cell::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
//void cell::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
void cell::mousePressEvent(QGraphicsSceneMouseEvent* event)
{
switch(event->button())
{
case Qt::LeftButton:
if(pressed==true)
{
break;
}
else{
setPixmap(QPixmap(“:/photo/9.jpg“));
break;
}
case Qt::RightButton:
{
number++;
const cellMatriax& onecell=mapcontrol::GetMapControl()->GetMapModel().GetCell();
int count= mapcontrol::GetMapControl()->GetMapModel().GetMines();
if(number==1)
{
setPixmap(QPixmap(“:/photo/mine.jpg“));
pressed=true;
if(onecell[cx][cy]==-1)
{
total++;
}
}
else if(number==2)
{ setPixmap(QPixmap(“:/photo/question.jpg“)); pressed=false;total--; }
else
{ setPixmap(QPixmap(“:/photo/unknown.jpg“));number=0; pressed=false; }
if(total==count)
{
QMessageBox msgBox;
msgBox.setText(“you are winner!“);
msgBox.exec();
total=0;
}
}
break;
default:
;
}
}
void cell::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
{
switch(event->button())
{
case Qt::LeftButton:
((mapView *)scene())->sweepall(cxcy);/*从当前item返回到scene*/
break;
case Qt::RightButton:
break;
default:
;
}
}
int cell::sweepCell()
{
if(true==pressed)
return 9;
const cellMatriax& acell=mapcontrol::GetMapControl()->GetMapModel().GetCell();
switch(acell[cx][cy])
{
case -1:
setPixmap(QPixmap(“:/photo/BOOM.jpg“));
total=0;
break;
case 0:
setPixmap(QPixmap(“:/photo/blank.jpg“));
break;
case 1:
setPixmap(QPixmap(“:/photo/1.jpg“));
break;
case 2:
setPixmap(QPixmap(“:/photo/2.jpg“));
break;
case 3:
setPixmap(QPixmap(“:/photo/3.jpg“));
break;
case 4:
setPixmap(QPixmap(“:/photo/4.jpg“));
break;
case 5:
setPixmap(QPixmap(“:/photo/5.jpg“));
break;
case 6:
setPixmap(QPixmap(“:/photo/6.jpg“));
break;
case 7:
setPixmap(QPixmap(“:/photo/7.jpg“));
break;
case 8:
setPixmap(QPixmap(“:/photo/8.jpg“));
br
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3161 2011-10-19 20:09 game\cell.cpp
文件 686 2011-10-21 09:46 game\cell.h
文件 12592 2011-10-13 16:14 game\cell.o
文件 727 2011-10-16 10:18 game\cusmize.cpp
文件 596 2011-10-16 10:18 game\cusmize.h
文件 9276 2011-10-13 16:14 game\cusmize.o
文件 3267 2011-10-16 10:18 game\cusmize.ui
文件 382 2011-10-15 17:16 game\custmize.cpp
文件 389 2011-10-15 17:15 game\custmize.h
文件 9532 2011-10-13 16:14 game\custmize.o
文件 2837 2011-10-15 11:23 game\custmize.ui
文件 223945 2011-10-13 16:15 game\game
文件 763 2011-10-13 16:13 game\game.pro
文件 13473 2011-10-13 18:17 game\game.pro.user
文件 189 2011-10-01 13:47 game\main.cpp
文件 1796 2011-10-13 16:14 game\main.o
文件 2988 2011-10-21 21:10 game\mainwindow.cpp
文件 856 2011-10-21 20:53 game\mainwindow.h
文件 20116 2011-10-13 16:14 game\mainwindow.o
文件 3984 2011-10-22 09:05 game\mainwindow.ui
文件 11042 2011-10-13 16:13 game\Makefile
文件 495 2011-10-17 12:15 game\mapcontrol.cpp
文件 352 2011-10-17 12:15 game\mapcontrol.h
文件 2052 2011-10-13 16:14 game\mapcontrol.o
文件 2262 2011-10-21 18:07 game\mapmodel.cpp
文件 711 2011-10-15 14:38 game\mapmodel.h
文件 13840 2011-10-13 16:14 game\mapmodel.o
文件 3365 2011-10-22 09:09 game\mapview.cpp
文件 752 2011-10-21 21:40 game\mapview.h
文件 15460 2011-10-13 16:14 game\mapview.o
............此处省略40个文件信息
- 上一篇:UDP动态温度曲线图
- 下一篇:s3c2440 bsp for vxworks
评论
共有 条评论