
Qt
文章平均质量分 70
kgduu
这个作者很懒,什么都没留下…
展开
-
Qt之Cannot create children for a parent that is in a different thread问题分析
在多线程场景中,使用QSerialPort,QTcpSocket等QIODevice设备时出现报Cannot create children for a parent that is in a different thread。原创 2025-01-08 22:58:56 · 506 阅读 · 0 评论 -
Qt之QtConcurrent
QtConcurrent是针对qt中多线程相关的高层封装,如QFuture。原创 2024-12-29 23:30:04 · 903 阅读 · 0 评论 -
Qt之connectSlotsByName分析
用于界面设置信号槽自动生成,要求槽函数定义形式为on_< objectName >_< signal >原创 2024-12-15 21:43:27 · 319 阅读 · 0 评论 -
Qt之QObject
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;QObject。原创 2024-10-18 13:57:25 · 764 阅读 · 0 评论 -
Qt之QFuture理解
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;11..nFuture原创 2024-09-19 14:31:54 · 1114 阅读 · 0 评论 -
Qt之Gui
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;QApplication:widget对应的应用QGuiApplication :gui对应的应用。原创 2024-08-04 16:52:44 · 872 阅读 · 0 评论 -
Qt之QAbstractSocketEngine
QAbstractSocketEngine是网络中的基础,QTcpSocket和QTcpServer底层都依赖socket引擎。原创 2024-06-10 21:37:15 · 819 阅读 · 0 评论 -
qt网络事件之QSocketNotifier
QSocketNotifier用于处理网络事件的。原创 2024-06-08 19:19:27 · 1424 阅读 · 1 评论 -
程序自启动时报读取配置文件失败
qt程序需要自启动,使用的是相对路径,直接运行exe时正常,但是通过注册表设置为自动启动时, 报读取配置文件失败。原创 2024-05-23 09:40:02 · 305 阅读 · 0 评论 -
QCoreApplication,QGuiApplication和QApplication之间关系
#mermaid-svg-5KcaCwjjHcNSTq0Z {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-5KcaCwjjHcNSTq0Z .error-icon{fill:#552222;}#mermaid-svg-5KcaCwjjHcNSTq0Z .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-5KcaCwj原创 2024-03-17 18:47:22 · 239 阅读 · 0 评论 -
Qt之插件
QPluginLoader:用于运行时加载插件。QLibrary:运行时加载动态库。原创 2024-03-05 19:45:51 · 944 阅读 · 0 评论 -
Qt之Gui的事件转换
将QEvdevMouseHandler的鼠标依赖与QEvdevMouseManager对应的槽函数建立联系,信号触发时,对应的槽函数会调用,执行QWindowSystemInterface的事件处理函数,将事件转化为QEvent。QGuiApplication的实现类QGuiApplicationPrivate方法processWindowSystemEvent处理window系统事件。flushWindowSystemEvents发送消息。原创 2024-03-03 20:20:08 · 582 阅读 · 0 评论 -
Qt线程之QThread
【代码】Qt线程之QThread。原创 2024-03-01 21:36:18 · 317 阅读 · 0 评论 -
Qt线程之QThreadData
QThreadData是用于表示线程相关的数据,在QObjectPrivate,QThreadPrivate中有使用,并且信号槽机制中也会用到该数据。原创 2024-02-29 23:27:01 · 682 阅读 · 0 评论 -
qt使用总结
1、创建多层级的目录可以使用QDir::mkpath。原创 2024-01-29 13:42:48 · 163 阅读 · 0 评论 -
qt写文件中文乱码问题解决
在用qt写入中文时,总是出现乱码。原创 2024-01-17 17:52:38 · 883 阅读 · 0 评论 -
winsock.h与winsock2.h出现重定义或不同的链接 问题解决
在使用了包含头文件前#include<windows.h>加上。在编译qt windows项目时出现错误。在pro文件中添加宏。原创 2023-12-29 10:11:49 · 776 阅读 · 0 评论 -
qmake的使用
可以通过CONFIG来指定是windows,console,testcase类型的app。可以通过CONFIG来指定是dll,staticlib,plugin类型。VERSION:用于指定版本号。原创 2023-12-28 14:27:50 · 545 阅读 · 0 评论 -
vs2017+qt5.14.2遇到的问题
修改E:\Qt\Qt5.14.2\5.14.2\msvc2017_64\mkspecs\common\msvc-version.conf文件中添加。1、在安装qt插件后,导入pro文件时,报。原创 2023-12-10 11:39:17 · 551 阅读 · 0 评论 -
Qt多线程之QThreadData::current()理解
● 关键就是new QAdoptedThread(data)会将data的引用计数增加到2,因为QAdoptedThread最终会调用QObject的构造函数QObject(QObjectPrivate &dd, QObject *parent)因为parent为nullptr,所以会再次调用QThreadData::current(),而此时调用get_thread_data获取得到的data不为空,该值也是第一次调用QThreadData::current()时分配出来的data。原创 2023-09-07 14:40:55 · 782 阅读 · 0 评论 -
qt基础之全局静态变量
用于定义全局静态变量。原创 2023-09-05 11:13:38 · 1320 阅读 · 0 评论 -
qt基础之d_ptr和q_ptr
d_ptr在QObject中,q_ptr在QObjectData。原创 2023-09-05 10:11:48 · 709 阅读 · 0 评论 -
qt多线程之QThreadPool
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;1nQRunnable。原创 2023-07-14 22:19:06 · 519 阅读 · 0 评论 -
qt知识图谱
事件框架原创 2023-07-01 22:41:42 · 589 阅读 · 0 评论 -
qt中的事件处理
【代码】qt中的事件处理。原创 2023-06-11 21:36:57 · 486 阅读 · 0 评论 -
qt之元对象系统
QMetaObject定义在src/qtbase/corelib/kernel/qobjectdefs.h中fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;QObject。原创 2023-05-20 16:27:29 · 766 阅读 · 0 评论 -
qt中的信号与槽
connect有好几种形式。原创 2023-05-19 22:55:11 · 1860 阅读 · 2 评论 -
qt资源收集
https://www.qt.io/product/features 官网。原创 2023-04-18 17:01:38 · 208 阅读 · 0 评论 -
qt中对任务繁忙时QProgressDialog的使用
在qt中对于后台数据处理比较耗时情况下,如果放在UI主线程中来处理,给人一种卡顿的感觉,可以将耗时的部分放在次线程中来处理,主线程来显示处理进度。在次线程中处理时,需要将处理进度信息传给UI线程,只需要在次线程中添加信号,主线程中添加对应的槽函数就可以了处理线程头文件如下:#ifndef PROCESSTHREAD_H#define PROCESSTHREAD_H#include原创 2015-05-01 11:11:42 · 9053 阅读 · 0 评论 -
Qt Designer 编辑Tab顺序
很简单!在Qt Designer 中点击“编辑Tab顺序“按钮进入编辑Tab顺序模式,如下图:之后界面会变成这样:点击那些包含数字的蓝色小方框就可以设置Tab顺序了,你第一次点击的数字方框那么该控件的Tab顺序会排在第一位,以此类推。简单吧!转载 2015-04-28 13:18:28 · 6244 阅读 · 2 评论 -
QT官方第三方开源工具
QT官方第三方开源工具。今天再次在网上看到了QT的第三方开源工具列表,这里留下link地址,以备将来用到的时候参考使用。 http://qt-project.org/wiki/Category:Add-onsAdd-onsThese are third party add-ons and libraries for Qt:Open S转载 2015-05-04 16:45:23 · 3363 阅读 · 0 评论 -
qt中显示文件夹下的目录及文件的过滤
如果用QDirModel实现这有些困难,并且QDirModel在qt新版本中是不推荐使用。可以用QFileSystemModel,只需要调用其成员函数setNameFilters就可以,如实现显示文件下D:/program文件下的目录及.cpp和.h文件QFileSystemModel *model = new QFileSystemModel(); model->setRootPat原创 2015-05-06 21:46:06 · 12577 阅读 · 1 评论 -
qt中用mysql获取所有的数据库、数据库中的表名
qt中用mysql如何获取mysql中获取所有数据库用命令:show databases 查看数据库的所有表名用命令:use database(数据库名);show tables; 而在qt中使用mysql获取数据库代码为:QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");db.setHostName("localhost"); //设原创 2015-05-11 19:42:30 · 8695 阅读 · 0 评论 -
Qt中用QuaZip来压缩和解压缩文件
1、简介QuaZIP是使用Qt,C++对ZLIB进行简单封装的用于压缩ZIP以及解压缩ZIP的开源库。如果你的Qt项目当中用到了压缩以及解压缩ZIP的话你可以考虑选择使用它。官方主页:http://quazip.sourceforge.net/souceforge下载地址:http://sourceforge.net/projects/quazip/2、编译QuaZip是基于Z原创 2015-04-08 22:46:57 · 12579 阅读 · 9 评论 -
qt读写xml文件
写xml文件,以QDomText方式写,代码如下QFile file("d:/test.txt");file.open(QIODevice::WriteOnly);QDomDocument doc;QDomProcessingInstruction instruction;instruction = doc.createProcessingInstruction("xml", "v原创 2015-04-21 22:03:04 · 4045 阅读 · 0 评论 -
Qt运行一个实例进程
在开发项目的工程中,我们经常希望只运行一个相同的Qt实例进程。当然也可以像类似QQ那样,同时登录多个不同的账号!为了避免这个问题,介绍以下几种用法,每一个解决方案都适用于特定的情况,所以必须尝试和适用合适的解决方案。一:使用QLocalSocket 方式:首先一个新的实例启动时,将尝试连接到同一个本地服务器,如果连接失败,则表示第一个实例进程,创建一个本地服务器。否则,进行退出。转载 2015-03-20 15:25:14 · 768 阅读 · 0 评论 -
QMutex pointer is misaligned的问题
前段时间在写多线程程序时,一个非模式对话框退出时,提示QMutex pointer is misaligned.说明一下,有个次线程读取数据。在退出时,对话框的析构函数直接调用次线程的quit方法。解决方法,线程退出后,可能次线程在主线程退出后结束,需要加上次线程的wait方法,主线程等待次线程结束后才退出原创 2015-05-07 09:25:16 · 5768 阅读 · 0 评论 -
qt中关闭窗口资源释放问题
针对QDialog对象,如果是栈上分配的,就不存在资源泄漏问题,但是当对象是new出来的,并且以局部对像存在,每次exec后者需要delete来释放,另外一种方法是在QDialog中设置属性:setAttribute(Qt::WA_DeleteOnClose, true);原创 2015-04-27 15:53:15 · 5774 阅读 · 0 评论 -
qt的Esc键
Esc键对大家来说实在熟悉不过的了,在Qt中Esc键也会默认的进行一些事件的触发,今天对Esc键测试了一下,突然发现不像我想象的那样,在QDialog中按下Esc键会默认调用reject()方法而不是closeEvent(QCloseEvent *event)或者其他事件。所以在这里如何管理和操作Esc键呢? 1、重新实现reject()方法 void LoginD转载 2015-04-27 15:44:03 · 1703 阅读 · 0 评论 -
给QTreeWidget添加右键菜单功能
1、在包含有QTreeWidget的窗体中添加customContextMenuRequested的信号处理,同时要添加setContextMenuPolicy(Qt::CustomContextMenu)2、为QTreeWidget添加节点,用SetData()函数来为每个节点赋予不同的键值。如:QTreeWidgetItem *root;root = new QTreeWidg原创 2015-03-17 23:18:19 · 16008 阅读 · 3 评论