
qt
文章平均质量分 75
CodingPioneer
人生就是永无休止的奋斗。
展开
-
qtcreator设置默认构建路径
最初安装qt后,通过qtcreator创建工程时,默认的构建路径是在项目同级目录下会生成一个build-开头的构建目录,最近qtcreator升级后,再创建工程时,默认的构建路径变为了工程子目录build下面。2种方式各有优缺点,比如在工程子目录build下面,查找输出时方便。如果不在工程子目录下,那么对于项目的备份,迁移则干净方便多了。打开qtcreator后,选择顶部菜单->编辑->首选项(Preferences…这个值表示默认的构建路径是在当前项目的子目录build下。原创 2024-08-08 10:37:29 · 1617 阅读 · 0 评论 -
QT学习笔记-QT程序执行Linux Shell命令实现动态添加路由
在使用QT进行Linux下应用程序开发时,在特定业务需求下,需要在程序中执行Linux的Shell命令。QT中执行Linux命令可以通过QProcess类和system来实现,如果需要得到Shell命令的执行的结果则只能通过QProcess类来实现。本示例解决的一个业务需求是带双网卡的Linux工控机中需要通过增加路由访问其他网段的服务器,最开始是把添加动态路由的功能写在启动脚本(shell脚本)中了,但在测试的时候拔掉对应的网线后,动态添加的路由会丢失,这时再插上网线还是不能与其他网段的服务器进行通讯。原创 2023-10-18 14:31:24 · 718 阅读 · 0 评论 -
QT学习笔记-QT访问各种关系数据库笔记汇总
在使用QT进行应用开发过程中,不可避免的会涉及到访问关系数据库,为了方便后期查阅笔记,在本文进行一下汇总。原创 2023-10-18 11:46:53 · 801 阅读 · 0 评论 -
QT学习笔记-开发环境编译Qt MySql数据库驱动与交叉编译Qt MySql数据库驱动
1、在3.3.1中安装libmysqlclient-dev后,也会在/usr/lib/x86_64-linux-gnu目录下部署libmysqlclient.so,但是这个文件不是arm版本的,因此在交叉编译qt mysql驱动时,是不能引用这个库的。SDK/buildroot/output/rockchip_rk3568/target/usr/lib/libmyqlclient.so文件是通过交叉编译工具对libmysqlclient-dev源码编译生成的针对目标系统(Arm/Linux)的库文件。原创 2023-08-23 16:59:08 · 1775 阅读 · 0 评论 -
QT学习笔记-Linux ARM环境下实现QT程序通过ODBC驱动访问SQLServer数据库
这里就不介绍安装过程了,为了能够保证与目标系统一致,我使用的就是构建目标操作系统时生成的交叉编译环境,目录为:LinuxSDK/buildroot/output/rockchip_rk3568/host/bin/。在嵌入式系统中使用QT开发上位机应用时不可避免的会涉及访问各种数据库的场景,而服务端数据库的种类则有多种可能(Oracle、Postgresql、MySql、SQLServer),本文就介绍一下如何实现在Linux Arm环境下实现QT程序通过ODBC驱动访问SQLServer数据库的。原创 2023-08-17 17:35:16 · 2356 阅读 · 0 评论 -
QT学习笔记-QT5.15编译及安装谷歌拼音输入法(QtInputMethod_GooglePinyin)
1、当我的笔记本电脑有外接了一个显示时(扩展模式)使用时会出现2个问题,第1个问题是虚拟键盘不能显示到扩展屏幕上,虽然我的demo窗口显示在扩展屏幕。第2个问题,就是当demo窗口(输入框窗口)在主屏幕最右测时,虚拟键盘会有一部分显示不出来,就是显示越界。在使用QT进行嵌入式应用开发时,往往程序最终的运行设备是有触屏的设备。QT自带的虚拟键盘屏幕占比较大,而且很容易挡住输入框,默认不能拖动,不太完美。1、把上一步编译生成的build/bin/platforminputcontexts目录下的。原创 2023-08-15 15:47:30 · 2586 阅读 · 1 评论 -
QT学习笔记-oracle oci数据库驱动交叉编译并移植到ARM开发板
交叉编译的思路:首先我们要明白在开发环境中安装qt时自带的qmake是不能作为交叉编译用的,因为他生成的Makefile中所采用的gcc和g++编译器都是对应x86和windows的。3、把在交叉编译服务器中生成的QtSrc/qtbase/src/plugins/sqldrivers/plugins/sqldrivers/libqsqlpsql.so文件传到目标系统的/usr/lib/qt/plugins/sqldrivers目录下,至此,目标系统就支持Qt程序对postgresql数据库的访问了。原创 2023-08-13 16:31:57 · 959 阅读 · 0 评论 -
QT学习笔记-QT安装oracle oci驱动
qt工程在编译是默认寻找数据库驱动的路径(注意项目使用的编译套件是MSVC2019_64位的)是:D:\Qt\5.15.2\msvc2019_64\plugins\sqldrivers,因此需要把上一步编译生成的3个文件libqsqloci.a、qsqloci.dll、qsqloci.dll.debug复制到D:\Qt\5.15.2\msvc2019_64\plugins\sqldrivers目录下。编译oci,需要至少2个包,就是Baisc Package、SDK Package。原创 2023-08-11 16:56:22 · 3021 阅读 · 0 评论 -
QT学习笔记-QT5.15 + MSVC编译套件时编译日志及运行日志日志乱码解决
在QtCreator中对程序进行调试运行时会在QtCreator的应用程序输出窗口(也可以认为是控制台)中显示程序中的qDebug()日志,这部分日志中的乱码通常是中文显示乱码。1、第1种是通过代码增加处理编码格式的方法,个人认为这种方法最不可取,会导致原始代码中增加很多无用代码,即增加了工作量又降低了代码的可读性。注意写法: { 与 msvc要在一行,中间有一个空格,如需奥把 { 写到msvc的下一行是编译不过去的。3、第3种方法,个人强烈推荐的方法,就是在pro文件中增加如下代码。原创 2023-08-02 12:55:35 · 1591 阅读 · 0 评论 -
QT学习笔记-QT5.15.2使用qtopcua5.15.2实现与PLC通讯(上)
5、build\lib\pkgconfig\Qt5OpcUa.pc 复制到 D:\Qt\5.15.2\mingw81_64\lib\pkgconfig\ 目录下。7、build\mkspecs\modules-inst* 复制到 D:\Qt\5.15.2\mingw81_64\mkspecs\modules\ 目录下。6、build\lib\cmake\Qt5OpcUa文件夹 复制到 D:\Qt\5.15.2\mingw81_64\lib\cmake\ 目录下。原创 2023-05-24 13:28:39 · 4732 阅读 · 3 评论 -
QT学习笔记-postgresq数据库l驱动移植到RK3568ARM开发板
再就是我们如果再交叉编译服务器(X86/Linux)上直接安装Linux版本的qt的话,这个qt自带的qmake也不能作为交叉编译用,因为他生成的Makefile中所采用的gcc和g++编译器都是对应x86和Linux的。SDK/buildroot/output/rockchip_rk3568/target/usr/lib/libpq.so文件是通过交叉编译工具对postgresql源码编译生成的针对目标系统(Arm/Linux)的库文件。本文后面介绍的是直接采用的操作系统编译服务器作为交叉编译环境的。原创 2023-03-30 11:56:55 · 1094 阅读 · 0 评论 -
QT学习笔记-QT安装postgresql驱动
qt工程在编译是默认寻找数据库驱动的路径(注意项目使用的编译套件是MinGw 64位的)是:D:\Qt\5.15.2\mingw81_64\plugins\sqldrivers,因此需要把上一步编译生成的3个文件libqsqlpsql.a、qsqlpsql.dll、qsqlpsql.dll.debug复制到D:\Qt\5.15.2\mingw81_64\plugins\sqldrivers目录下。9、把项目构建方式改为release,然后鼠标右键点击工程psql,在弹出菜单中选择“构建”或“重新构建”。原创 2023-03-20 16:33:49 · 6275 阅读 · 4 评论 -
QT学习笔记-使用QSS美化程序界面
QT的GUI开发过程中,窗体以及窗体控件默认都是系统基本样式,QT提供了QSS可以让程序界面变的好看,变得高大上。本文只从技术实现角度进行阐述。然后就像编写css一样编辑qss,以下内容是对按钮的样式进行统一设置。/,不要用//,不然会导致程序无法识别stylesheet。注意:qss中的注释请使用/原创 2023-03-17 18:02:19 · 1274 阅读 · 0 评论 -
QT学习笔记-程序启动时让窗口屏幕居中显示
【代码】QT学习笔记-程序启动时让窗口屏幕居中显示。原创 2023-03-17 17:44:02 · 218 阅读 · 0 评论 -
QT学习笔记-C/C++的代码折叠#pragma region以及消除[-Wunknown-pragmas]构建告警
本文就说一下代码折叠,个人认为代码折叠应该算是编码规范的一个基本要求,合理的折叠代码可以增强代码的可读性和可维护性。由于默认qt是开启显示所有告警信息的,因此先通过CONFIG+=warn_off把qt自己的告警功能关闭,然后把QMAKE_CXXFLAGS += -Wno-unknown-pragmas加到QMAKE_CXXFLAGS += -Wall后面,不能放到前面,否则不会生效。随着代码的增多,会生成满屏的警告,而这些警告对我们调试代码毫无意义,而且影响查找有效的警告信息。原创 2023-03-11 23:29:39 · 3416 阅读 · 4 评论 -
QT学习笔记-QT多项目系统中如何指定各项目的编译顺序
在QT/C++这个工具中同样可以通过创建子项目的方式对程序进行模块化,在这种组织方式中为了更好的复用代码,往往会把多个地方使用的程序放入一个共享库中,然后在其他库或程序中进行引用。如果我们不指定各项目的编译顺序,很有可能出现在编译某个项目时,而这个项目引用(依赖)的某个项目还未被编译,这时就会出现编译错误,从而导致编译失败。最好的方式就是能够先编译被引用(依赖)的项目,那么这个编译顺序在QT中是在哪指定的呢?默认各子项目(a3lib、common、plc、test)的编译是没有顺序的。原创 2023-03-09 14:45:26 · 1436 阅读 · 3 评论 -
Qt学习笔记-Qt程序中的调试日志
对于一门好的编程语言或者开发框架来说,便捷的调试日志功能是必不可少的。QT作为一个跨平台的开发工具,内置了便捷的调试日志功能,本文就对其做一个简介。原创 2023-03-02 15:07:01 · 1066 阅读 · 0 评论 -
Qt安装完毕后,如何再添加移除组件
最初安装qt5.15.2时只安装了MinGW-32的编译套件,想增加MinGW-64的编译套件。根据需要勾选要添加的组件,就可以点击“下一步”按钮,然后等待安装完成就行了。操作系统:Windows10专业版。Qt版本:qt-5.15.2。原创 2023-02-27 13:39:09 · 4656 阅读 · 1 评论