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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/753512.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么做好独立站的SEO优化

随着全球贸易的蓬勃发展,越来越多的企业开始关注外贸市场,并将目光投向了外贸网站。然而,在竞争激烈的外贸市场中,如何写出吸引人的文章,以及如何优化网站以在搜索引擎中脱颖而出,成为了外贸独立网站必须面…

机器学习-绪论

机器学习致力于研究如何通过计算的手段、利用经验来改善系统自身的性能。在计算机系统中,“经验”通常以“数据”的形式存在,因此,机器学习所研究的主要内容,是关于在计算机上从数据中产生“模型”的算法,即“学习算法…

PHP<=7.4.21 Development Server源码泄露漏洞 例题

打开题目 dirsearch扫描发现存在shell.php 非预期解 访问shell.php&#xff0c;往下翻直接就看到了flag.. 正常解法 访问shell.php 看见php的版本是7.3.33 我们知道 PHP<7.4.21时通过php -S开起的WEB服务器存在源码泄露漏洞&#xff0c;可以将PHP文件作为静态文件直接输…

LLM 面试知识点——模型基础知识

1、主流架构 目前LLM(Large Language Model)主流结构包括三种范式,分别为Encoder-Decoder、Causal Decoder、Prefix Decode。对应的网络整体结构和Attention掩码如下图。 、 各自特点、优缺点如下: 1)Encoder-Decoder 结构特点:输入双向注意力,输出单向注意力。 代表…

Tomcat:Session ID保持会话

目录 前言 ​一、部署环境 二、部署nginx反向代理服务器 三、部署tomcat服务器1 四、部署tomcat服务器2 五、客户端测试&#xff08;Session ID不断变动&#xff09; 六、配置Session ID会话保持 七、客户端测试&#xff08;Session ID保持&#xff09; 前言 此次实验…

C语言自定义库

编写 xx.c 和xx.h文件\将源代码编译为目标文件 gcc -c add.c sub.c 执行完毕后会生产add.o和sub.o文件静态库创建使用ar命令&#xff1b; ar -r libmymath.a add.o sub.o将库和main.c文件一起编译 gcc -o main main.c -lmymath -L./ 注意 上述书写格式不要错乱 -L 是指定文件路…

鸿蒙-项目创建及了解

目录 项目创建 1.App普通项目创建 2.元服务创建 项目结构 .hvigor .idea AppScope entry EntryAbility.ts pages resources module.json5 ohosTest hvigorfile.ts build-profile.json5 oh_modules build-profile.json5 hvigorfile.ts 项目运行 项目创建 F…

单模场哈密顿量推导

满足麦克斯韦方程和边界条件的单模场又下式&#xff08;1&#xff09;&#xff0c;&#xff08;2&#xff09;给出 --------&#xff08;1&#xff09; ---------&#xff08;2&#xff09; , 单模场的经典场能或者哈密顿量又下式给出&#xff1a; &#xff08;3&#xff09…

JUC并发编程(四)

1、同步模式保护性暂停 用一个线程等待另一个线程的执行结果 有一个结果需要从一个线程传递到另一个线程&#xff0c;让他们关联同一个中间类。如果有结果不断从一个线程到另一个线程那么可以使用消息队列&#xff08;见生产者/消费者&#xff09;。JDK 中&#xff0c;join 的…

WebAssembly探索篇(三)emcc和cmake编译opencv案例

文章目录 开发环境安装opencv环境 实践出真知完整项目效果图 踩坑fatal error: opencv2/opencv.hpp file not found增加软链ln&#xff08;无效&#xff09;改用自行安装opencv&#xff0c;再显示指定lib路径 emcc命令行运行方式 最近因为项目原因&#xff0c;研究了一下WebAss…

C语言例:表达式 45-35+1^2 的值

代码如下&#xff1a; #include<stdio.h> int main(void) {int a;a 4&5-3&&51^2;printf("4&5-3&&51^2 %d\n",a);return 0; } 结果如下&#xff1a;

maven一点通

1.maven简介 Maven是一个基于Java的工程构建工具&#xff0c;用于管理和构建项目的依赖关系。它提供了一种标准的项目结构和一组约定&#xff0c;使得项目的开发、构建、部署和文档化更加容易和可靠。 Maven的主要功能包括&#xff1a; 依赖管理&#xff1a;Maven可以自动下载…

课设系统篇

《古代六扇门人员管理系统》 数据库 sixdoor 编码 utf8mb4 视图 查询官员等级 存储过程 CREATE DEFINERrootlocalhost PROCEDURE levelname(IN g_name VARCHAR(20)) BEGINSELECT name,level FROM servingofficials INNER JOIN jobtitle onservingofficials.role jobtitl…

Android性能自测

目录 一、应用启动耗时自测 二、帧率查看 三、Top命令查看系统资源占用 3.1 第一行&#xff1a;任务(进程) 3.2 第二行&#xff1a;mem状态 3.3 第三行&#xff1a;swap交换分区 3.4 第四行&#xff1a;cpu状态 3.5 第五行&#xff1a;标题 四、抓取trace.html文件分析…

基于tcp协议的网络通信(基础echo版.多进程版,多线程版,线程池版),telnet命令

目录 基础版 思路 辅助函数 服务端 代码 运行情况 -- telnet ip 端口号 传输的数据为什么没有转换格式 客户端 思路 代码 多进程版 引入 问题 解决 注意点 服务端 代码 运行情况 进程池版(简单介绍) 多线程版 引入 问题解决 注意点 服务端 代码 …

嵌入式Linux 内核的内存管理方法

内存管理的主要工作就是对物理内存进行组织,然后对物理内存的分配和回收。但是Linux引入了虚拟地址的概念。 虚拟地址的作用 如果用户进程直接操作物理地址会有以下的坏处: 1、 用户进程可以直接操作内核对应的内存,破坏内核运行。 2、 用户进程也会破坏其他进程的运行 …

连号区间数c++

题目 输入样例1&#xff1a; 4 3 2 4 1输出样例1&#xff1a; 7输入样例2&#xff1a; 5 3 4 2 5 1输出样例2&#xff1a; 9样例解释 第一个用例中&#xff0c;有 77 个连号区间分别是&#xff1a;[1,1],[1,2],[1,3],[1,4],[2,2],[3,3],[4,4][1,1],[1,2],[1,3],[1,4],[2,2…

详细讲解c语言结构体、联合体、枚举

目录 1、结构体类型声明 1.1结构体的定义 1.2 结构体变量的声明 1.3 结构体变量的创建和初始化 2、如何使创建的结构体所占内存最小 2.1 结构体内存对齐-存储 2.2 通过宏offsetof计算结构体内变量的偏移量 2.3 如何通过宏offsetof计算数组的偏移量 2.4 为什么存在内存对…

吴恩达机器学习笔记 二十四 决策树模型 学习过程 什么时候停止分裂 如何选择结点特征

案例&#xff1a;识别小猫&#xff0c;上面这个分类的特征 x 采用分类值&#xff08;几个离散的值&#xff09; 决策树最顶端的结点称根结点(root node)&#xff0c;除了根结点和叶子结点之外的叫决策结点(decision node)&#xff0c;最底层的叫叶子结点(leaf node)&#xff0c…

华为openEuler系统卸载jdk

华为openEuler系统卸载jdk 1.查看openEuler上已安装的 Java 版本&#xff1a; 在终端中运行以下命令&#xff0c;查看系统中已经安装的 Java 版本。 sudo alternatives --config java这将列出已安装的 Java 版本&#xff0c;你可以看到当前使用的是哪个版本 2.卸载 Java&am…