@TOP
熟悉QT开发环境、搭建项目框架、建立图层结构、完善背景元素。
新建一个项目;
选择基于桌面的QT应用;
命名项目与选择项目路径;
路径选择是切记不能含有中文字符,否则不能构建(红色条);
选择构建编译系统;
选择类的基本信息;Base class 为 QWidget,不生成ui文件;
不提供翻译;
根据操作系统选择构建套件;
完成项目创建。
拷贝项目资料到刚才创建的项目中;
将code中的代码文件,以及main.cpp,mainwidget.cpp,mainwidget.h文件放入新建文件夹src中;
选择 项目->Add Existing Directory 添加 src 文件夹中的所有代码文件;
添加QT资源文件,文件名写pvz;
选择pvz.qrc -> Add Existing Directory 添加audio,image两个文件夹,弹窗选择 Yes to all;
打开 项目.pro 文件,删除过期信息;
#include "mainwidget.h"
#include "ImageManager.h"
#include <QGraphicsView>
#include <QGraphicsItem>MainWidget::MainWidget(QWidget *parent): QWidget(parent)
{//创建View对象,传入this指针QGraphicsView *gameView = new QGraphicsView(this);//设置游戏界面尺寸gameView->setGeometry(0,0,800,600);//创建场景对象,设置游戏界面场景QGraphicsScene *gameScene = new QGraphicsScene;gameView->setScene(gameScene);//创建图片元素对象,设置背景图片,添加背景元素到游戏场景QGraphicsPixmapItem *backgroundItem = new QGraphicsPixmapItem(gImageCache->load("interface/background1.jpg"));gameScene->addItem(backgroundItem);
}MainWidget::~MainWidget()
{
}
#include "mainwidget.h"#include <QApplication>
#include "ImageManager.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);//初始化图片管理器InitImageManager();MainWidget w;w.show();();
}
添加新的C++ class 文件;
修改类名,基类,和相关信息;
GameView 和 GameScene 两个类;
其中 gameview.h 和 gameview.cpp ,为GameView类的构造函数添加参数;
在 mainwidget.h 文件中包含类的头文件,声明类并创建对象;
在 GameView 类的构造函数中实现界面操作,在 GameScene 类的构造函数中实现场景元素操作;
#include "gameview.h"GameView::GameView(QWidget *parent): QGraphicsView(parent)
{//设置游戏界面尺寸setGeometry(0,0,800,600);
}
#include "gamescene.h"
#include <QGraphicsItem>
#include "ImageManager.h"GameScene::GameScene()
{//创建图片元素对象,设置背景图片,添加背景元素到游戏场景QGraphicsPixmapItem *backgroundItem = new QGraphicsPixmapItem(gImageCache->load("interface/background1.jpg"));addItem(backgroundItem);
}
#include "mainwidget.h"MainWidget::MainWidget(QWidget *parent): QWidget(parent),gameView(new GameView(this)),gameScene(new GameScene)
{//设置游戏界面场景gameView->setScene(gameScene);
}MainWidget::~MainWidget()
{
}
本文发布于:2024-02-02 00:16:19,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170680984440121.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |