QT进阶-----------认识QT相关的模块(第四天)

1、关于Visual Studio与QT Creator的不同导入方式

Visual Studio作为windows宇宙最强编辑器以及编译器,它相当的好用,作为一个学了一年QT的菜鸟,总结了一些关于VS以及QT Creator两者的不同。

首先,在VS中qt是作为第三方库导入到vs中的, 且编译方式按照你的选择一般是qmake方式,有些人喜欢用cmake,当然也是支持cmake方式组建项目,作为第三方的库导入到vs中,需要dll,lib,以及.h文件,不过qt做了关于vs下的插件,很方便的就可以导入到vs中,值得注意的是:导入的过程可能报错,不建议在vs内部商店下载相关的插件,而是在QT的官方下载下下载插件。

如何下载我往期的文章有具体描述。

QT自带的编辑器QT Creator基本不需要什么配置,拿来即用,很适合新手使用,但是对于MSVC编辑方式,需要下载对应版本 Visual Studio对应的版本的编辑器。mingW无需下载其他的软件。

Visual Studio优点:代表报错原由十分清楚,很容易找到代码出错的位置以及代码出错的原因。

Visual Studio缺点:配置麻烦,严格遵守c++代码规范,对于QT这个作为c++的超集也是如此。

QT Creator优点:适合新手,基本无需配置,拿来即用。

QT Creator缺点:报错十分不清楚,代码出错很容易显示崩溃了,出错了,极难找出错误定位。

2、关于QT的模块

在qmake中,我们一般导入模块在pro文件中导入例如:

QT += core gui

QT +=sql network

这是一些常用的模块,core是核心模块,包括了UI组建中大部分的控件,sql是数据库模块,network是网络库模块。

当你下载好qt后,可以在bin目录下,看到你下载好的所有模块,

若是在pro文件中添加某个模块显示报错,提醒你没有下载该部分模块,说明你最初在下载qt的时候模块选择上并没有下载该模块,并非所有的模块你需要下载,这样会导致qt下载的数据量过大,我使用的版本是5.15.2,下载完所有模块以及多个编译器花费了50g左右。

一般的情况下,打包好的qt常用的模块才7-10g,如果你需要添加模块,有种简单的方式,

QT的维护工具,可以添加或者删除某个模块。

3、qt的常用模块

Qt框架包含许多模块,每个模块都提供了一组特定功能的类和工具,以便于开发不同类型的应用程序。一些常用的Qt模块包括:

  1. Core模块 (core): 包含了核心的非GUI功能,例如对象模型、容器类、字符串处理、文件操作等。

  2. GUI模块 (gui): 提供了用于创建图形用户界面的类和功能,包括窗口管理、事件处理、绘图、文本渲染等。

  3. 网络模块 (network): 提供了用于网络通信的类和工具,包括TCP/IP、UDP、HTTP等协议的支持。

  4. SQL模块 (sql): 提供了数据库访问的类和接口,支持多种数据库后端,包括MySQL、SQLite、PostgreSQL等。

  5. Widgets模块 (widgets): 提供了一组丰富的可视化控件,用于构建传统的桌面应用程序界面。

  6. Multimedia模块 (multimedia): 提供了多媒体功能,包括音频和视频的播放、录制和处理。

  7. OpenGL模块 (opengl): 提供了与OpenGL集成的类和功能,用于创建高性能的图形应用程序。

  8. XML模块 (xml): 提供了XML数据处理的类和工具,支持XML的解析、生成和处理。

  9. Concurrent模块 (concurrent): 提供了用于多线程编程的类和工具,包括线程、互斥体、信号量等。

  10. WebKit模块 (webkit): 提供了基于WebKit引擎的网页浏览器功能,用于显示和操作网页内容。

    QT += opengl

确保您的项目能够使用Qt提供的OpenGL集成类和功能,以便创建高性能的图形应用程序。然后,您可以在您的应用程序中使用OpenGL相关的类和方法来进行图形渲染和处理。

复制代码
QT += xml

读写xml文件

复制代码
QT += serialport

可以使用Qt的串口模块(Qt Serial Port module)。这个模块提供了对串口的基本操作和管理,可以在Qt应用程序中轻松地实现串口通信功能。

复制代码
QT +=charts

图表模块,使用qt自带的表格,可以实现线形图,折线图,饼状图等。

相关推荐
tobebetter95273 小时前
How to manage python versions on windows
开发语言·windows·python
9***P3344 小时前
PHP代码覆盖率
开发语言·php·代码覆盖率
CoderYanger4 小时前
优选算法-栈:67.基本计算器Ⅱ
java·开发语言·算法·leetcode·职场和发展·1024程序员节
jllllyuz4 小时前
Matlab实现基于Matrix Pencil算法实现声源信号角度和时间估计
开发语言·算法·matlab
多多*4 小时前
Java复习 操作系统原理 计算机网络相关 2025年11月23日
java·开发语言·网络·算法·spring·microsoft·maven
p***43484 小时前
Rust网络编程模型
开发语言·网络·rust
ᐇ9595 小时前
Java集合框架深度实战:构建智能教育管理与娱乐系统
java·开发语言·娱乐
梁正雄5 小时前
1、python基础语法
开发语言·python
强化学习与机器人控制仿真6 小时前
RSL-RL:开源人形机器人强化学习控制研究库
开发语言·人工智能·stm32·神经网络·机器人·强化学习·模仿学习
百***48076 小时前
【Golang】slice切片
开发语言·算法·golang