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自带的表格,可以实现线形图,折线图,饼状图等。

相关推荐
Elihuss1 小时前
ONVIF协议操作摄像头方法
开发语言·php
Swift社区5 小时前
在 Swift 中实现字符串分割问题:以字典中的单词构造句子
开发语言·ios·swift
没头脑的ht5 小时前
Swift内存访问冲突
开发语言·ios·swift
没头脑的ht5 小时前
Swift闭包的本质
开发语言·ios·swift
wjs20245 小时前
Swift 数组
开发语言
stm 学习ing6 小时前
FPGA 第十讲 避免latch的产生
c语言·开发语言·单片机·嵌入式硬件·fpga开发·fpga
湫ccc7 小时前
《Python基础》之字符串格式化输出
开发语言·python
mqiqe7 小时前
Python MySQL通过Binlog 获取变更记录 恢复数据
开发语言·python·mysql
AttackingLin7 小时前
2024强网杯--babyheap house of apple2解法
linux·开发语言·python