
Qt工程架构及工程实践
文章平均质量分 91
本专栏内主要介绍Qt创建大工程架构方法及Qt本身的源代码分析,并添加了项目实践中常见需求实现方法,让你对Qt有更深刻的认识
优惠券已抵扣
余额抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
十月旧城
winter is coming
展开
-
Qt工程实践_06_Qt MSVC2O17编译器下的程序添加VS2017生成的动态链接库方法
选择lib文件所在位置,注意右下角就不要勾选了,如果勾选了就会在.pro文件生成的代码中增加相应的后缀,此处VS生成的动态不需要。动态链接库中定义有两种函数:导出函数(export function)和内部函数(internal function)。最后:运行时将.dll文件与.exe放在同一目录下,编译没有错误即通过!点击下一步,.pro文件中增加以下代码,添加了搜索路径和lib文件位置。,因此需要使用VS2017 VS,并设置生成的为64位的动态链接库。Widget程序的.h文件中增加。原创 2024-09-05 23:46:45 · 274 阅读 · 0 评论 -
Qt工程实践_05_Qt开发串口通讯软件中的数据转换问题:读取时QByteArray转str;发送时格式;int转16进制格式str;string中截取字符;16进制数加法;str转BytAr
在利用Qt进行串口程序开发过程中,除了与串口通讯的功能实现以外,数据的转换也是比较麻烦的一件事,本篇主要介绍串口通讯中数据转换的问题,关于功能实现大家在网上搜索就能找到相关案例。......原创 2022-07-22 16:18:05 · 1814 阅读 · 0 评论 -
Qt工程实践_04_sqlite的交互实现方法(Qt内部封装的类库,将SQLite语句发送给SQLite软件,QSqlDatabase实现数据库连接,QSqlQuery执行指定的SQLite语句)
Sqlite是一个小型的本地数据库管理软件,对于保存一些软件配置参数或量不是很大的数据是相当的方便,Qt本身已经自带了Sqlite的驱动,直接使用相关的类库即可。个人总结: 利用Qt实现sqlite的交互主要就是利用Qt内部封装的类库,将SQLite语句发送给SQLite软件,实现创建、修改、获取数据库的操作,QSqlDatabase类实现数据库的连接,QSqlQuery执行指定的SQLite语句。使用过程中的参考文档:SQL 教程;SQLite 教程;MySQL 教程1. Sqlite软件下载安装原创 2022-02-23 11:39:23 · 1282 阅读 · 0 评论 -
Qt工程实践_03_Qt 动态链接库生成及显式调用(MSVC编译器生成和新建项目中链接动态链接库会造成动态链接库无法使用问题及解决方法;选择MINGW生成和创建新项目链接dll文件就不会存在问题)
本篇以Qt Creater编译器为例,创建并调用动态库,并发现选择MSVC编译器生成和新建项目中链接动态链接库会造成动态链接库无法使用的问题;选择MINGW生成和链接dll文件就不会存在问题。原创 2022-07-11 10:24:48 · 1613 阅读 · 2 评论 -
Qt工程实践_02_QtCreator中qmake、构建、运行、清理等区别与联系(关于makefile, make、qmake基础知识)
总结放于前: 一个工程编译连接规则是放于Makefile文件中的,qmake是用于在qtcreate下生成Makefile文件的工具,实际中如果单独点击qmake,好像还有解释makefile中指令即编译的功能(待后期验证)1. 关于makefile:一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作。Makefile 有自己的书写格式、关键字、函数,像原创 2021-11-27 17:00:41 · 4201 阅读 · 1 评论 -
Qt工程实践_01_Qt样式表Qss(什么是QSS;基本语法;setStyleSheet函数;样式表的属性值;利用QtCreate实现样式切换;样式表实现皮肤改变实例)
本篇介绍什么是样式表,讨论如何使用Qt样式表Qss修改应用程序外观,并通过实例进行讲解。了解HTML的同学都知道,一般在HTML中我们把样式表叫做CSS,在Qt中我们称之为QSS。QSS和CSS并不完全等同,语法完全类似,定义上存在一些差别。1. 什么是QSSQSS是Qt程序界面中用来设置控件的背景图片、大小、字体颜色、字体类型、按钮状态变化等属性,用于美化UI界面。实现界面和程序的分离,快速切换皮肤。QSS最大的优点就是简单便捷,我们可以通过它快速实现应用程序的外观界面。2. QSS的基本语法原创 2022-05-08 12:18:16 · 24249 阅读 · 1 评论 -
Qt工程架构_04_Qt源代码中二进制兼容及d、q指针的理解
1. 二进制兼容的理解首先按照本文对二进制兼容进行理解。此处是本人的总结:将类的私有属性(不需要暴露的部分)放到私有类中,在类中定义私类的指针进行交互,指针的大小是已知不变的(指针数据类型为Int,4个字节),软件发布后只需要改私类中的部分,不会影响类的大小和结构,这样就能保证通过这种方式发生变化时公有接口就不会发生改变,整个软件不需要重新编译,如果使用私有的成员,则可能导致接口变化,就需要软件整体重新编译。私有类中定义公有的指针,公有类中定义私有指针,实现公有类和私有类之间进行函数的调用。2. QT原创 2022-01-13 22:40:00 · 649 阅读 · 0 评论 -
Qt工程架构_03_Qt构建大型工程详解(父子项目框架搭建;项目配置;动态库链接方法;封装模块添加;多子工程exe生成;QMWin类中添加可视控件;项目间全局变量)
本博文详细介绍了大型工程的创建过程,项目目标是实现模块化,结构清晰化,将独立小型工程作为大工程一部分进行组合,详细介绍在具有多个子项目的情况下的相互调用方法。原创 2023-03-17 16:12:44 · 3039 阅读 · 0 评论 -
Qt工程架构_02_Qt从零自建包含主工程调用子工程的大工程(独立子工程构建大工程)
上篇Qt创建动态链接库及调用中我们利用Qt自带的子目录框架实现子工程作为动态链接库被主工程调用,并组成一个大的工程。但是实际工作中很可能为了高效分工及代码复用,有些子工程是分别写好的,这个时候如何组成一个像上篇那样的工程呢?下面以一个Demo的形式进行分享。原创 2022-01-21 09:18:25 · 1018 阅读 · 0 评论 -
Qt工程架构_01_Qt创建动态链接库及调用(创建子目录项目、创建动态链接库、多核编译设置、主工程配置库文件、存在运行不出来的问题及解决办法)
使用dll的形式开发项目,十分适合团队合作开发大型项目,易于扩展,库之间相对独立,可以独立编译,并且也可以保护源码。本文Qt创建的动态链接库dll被称为驱动,本节演示如何创建动态链接库,并进行调用,最终实现UI上的加法器。原创 2022-01-18 18:45:46 · 1487 阅读 · 1 评论