QT开发第一课

阅读: 评论:0

QT开发第一课

QT开发第一课

@TOP
熟悉QT开发环境、搭建项目框架、建立图层结构、完善背景元素。

熟悉QT开发环境

1. 创建一个新项目

新建一个项目;
选择基于桌面的QT应用;

命名项目与选择项目路径;
路径选择是切记不能含有中文字符,否则不能构建(红色条);

选择构建编译系统;

选择类的基本信息;Base class 为 QWidget,不生成ui文件;

不提供翻译;

根据操作系统选择构建套件;

完成项目创建。

2. 加载文件与资源

拷贝项目资料到刚才创建的项目中;

将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 文件,删除过期信息;

3. 项目完成,运行图示。

加入背景元素

1. mainwidget.cpp 文件

#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()
{
}

2. main.cpp 文件

#include "mainwidget.h"#include <QApplication>
#include "ImageManager.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);//初始化图片管理器InitImageManager();MainWidget w;w.show();();
}

3. 运行图示。

类的封装

添加新的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小时内删除。

标签:一课   QT
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23