当前位置:首页 > Qt课程设计--贪吃蛇游戏设计
情侣模式玩家1用上下左右控制方向,用P、O、I(或者是1、2、0)来发射子弹,可以后退,不能穿越边框玩家2用W,A,S,D来控制方向,空格键释放陷阱子弹和陷阱都需要food才能补充;
英雄榜能够记录正常模式和死亡模式游戏时间,游戏成绩,游戏排行,玩家姓名;
5
按下帮助键可获得游戏帮助说明。
设计体会
我学会了用Qt编写贪吃蛇游戏,能熟练地掌握Qt语言,通过每章每节的学习让我知道了Qt的重要性,学习Qt能让我们深刻的知道在以后的工作中能用到,还有让我知道学习的重要意义,通过 对Qt的学习能让我们解决很多的实际东西,QT能让我们锻炼自己的编程能力,还能处理许多别的语言处理不了的东西,我知道了学习Qt不仅能提高自己的认识 ,还巩固了对原来学过的其他语言的学习。
参考文献
Qt 4开发实践(电子工业出版社) 部分源代码:
#include \
Games::Games(QWidget *parent) : QMainWindow(parent) {
setWindowTitle(tr(\ showWidget =new ShowWidget(this); setCentralWidget(showWidget); createActions(); createMenus(); createToolBars();
6
if(img.load(\ {
showWidget->imageLabel->setPixmap(QPixmap::fromImage(img)); } }
Games::~Games() {}
//动作的实现
void Games::createActions() {
//\普通模式\动作
normalAction =new QAction(QIcon(\普通模式\ normalAction->setStatusTip(tr(\进入普通模式\
connect(normalAction,SIGNAL(triggered()),this,SLOT(shownsnake()));
//\死亡模式\动作
deathAction =new QAction(QIcon(\死亡模式\ deathAction->setStatusTip(tr(\进入死亡模式\
connect(deathAction,SIGNAL(triggered()),this,SLOT(showdsnake())); //\情侣模式\动作
loversAction =new QAction(QIcon(\情侣模式\ loversAction->setStatusTip(tr(\进入情侣模式\
connect(loversAction,SIGNAL(triggered()),this,SLOT(showlsnake())); //\英雄榜\动作
heroAction =new QAction(QIcon(\英雄榜\ heroAction->setStatusTip(tr(\英雄榜\
connect(heroAction,SIGNAL(triggered()),this,SLOT(showHerolist())); //\退出\动作
exitAction =new QAction(QIcon(\退出\ exitAction->setStatusTip(tr(\退出\
connect(exitAction,SIGNAL(triggered()),this,SLOT(close())); //\帮助\动作
helpAction =new QAction(tr(\
connect(helpAction,SIGNAL(triggered()),this,SLOT(showHelp())); }
//菜单(Menus)的实现
7
void Games::createMenus() { //菜单
fileMenu =menuBar()->addMenu(tr(\菜单\ fileMenu->addAction(normalAction); fileMenu->addAction(deathAction); fileMenu->addAction(loversAction); fileMenu->addAction(heroAction); fileMenu->addSeparator(); fileMenu->addAction(exitAction); //帮助
helpMenu =menuBar()->addMenu(tr(\帮助\ helpMenu ->addAction(helpAction); }
//工具栏的实现
void Games::createToolBars() {
//文件工具栏
fileTool =addToolBar(\ fileTool->addAction(normalAction); fileTool->addAction(deathAction); fileTool->addAction(loversAction); fileTool->addAction(heroAction); fileTool->addAction(exitAction); }
void Games::showHelp() {
newhelp =new help(); newhelp->show(); }
void Games::showHerolist() {
newherolist =new herolist(); newherolist->show(); }
void Games::shownsnake() {
8
共分享92篇相关文档