随笔分类 -  Qt

摘要:Qt实现线程封装 本文使用 QObject::moveToThread 方式实现Qt中的线程封装,适用于频繁与主线程通信的场景。 1 线程封装 1.1 工作者对象头文件(AsyncWorker.h) #ifndef ASYNCWORKER_H #define ASYNCWORKER_H #inclu 阅读全文
posted @ 2025-07-14 18:11 xhubobo 阅读(20) 评论(0) 推荐(0)
摘要:Qt实现简单事件总线 事件总线(Event Bus)是一种解耦组件通信的设计模式,它允许不同对象之间通过事件进行通信而无需直接引用对方。 事件通常是自定义类型,需要在main.cpp中注册自定义元类型 //注册自定义元类型 qRegisterMetaType<KeyPressedEvent>("Ke 阅读全文
posted @ 2025-07-09 13:13 xhubobo 阅读(83) 评论(0) 推荐(0)
摘要:在Qt项目中直接包含spdlog源码是最简单且跨平台的集成方式。以下是详细的实现步骤: 1. 下载spdlog源码 通过spdlog的GitHub仓库下载源码:v1.15.3.zip。 将v1.15.3.zip解压缩,拷贝include、src文件夹到third_party/spdlog,Qt项目结 阅读全文
posted @ 2025-07-05 21:45 xhubobo 阅读(206) 评论(0) 推荐(0)
摘要:1. 下载sdk vlc sdk下载地址为http://download.videolan.org/pub/videolan/vlc/,以3.0.20为例,下载文件为vlc-3.0.20-win32.7z。 需要注意的是,需要下载.7z文件,.zip文件中是没有sdk文件夹的。 将vlc-3.0.2 阅读全文
posted @ 2025-07-04 09:46 xhubobo 阅读(275) 评论(0) 推荐(0)
摘要:1、在*.pro文件中添加多媒体模块 QT += multimedia multimediawidgets 2、使用QCamera`和`QCameraViewfinder实现捕捉和显示摄像头图像 2.1 头文件mainwindow.h #ifndef MAINWINDOW_H #define MAI 阅读全文
posted @ 2025-02-25 17:35 xhubobo 阅读(178) 评论(0) 推荐(0)
摘要:本文以BeJson(https://www.bejson.com/)中的JSON在线编辑器示例内容作为学习Qt中构建、解析Json的参考方法。 1、Json文本 { "name": "BeJson", "url": "http://www.bejson.com", "page": 88, "isNo 阅读全文
posted @ 2024-11-11 23:10 xhubobo 阅读(67) 评论(0) 推荐(0)
摘要:void testReadWriteFile() { //当前程序所在文件夹 QString dirPath = QCoreApplication::applicationDirPath(); QString path = QDir::cleanPath(dirPath + QDir::separa 阅读全文
posted @ 2024-11-11 22:06 xhubobo 阅读(40) 评论(0) 推荐(0)
摘要:Qt中使用QNetworkAccessManager类来实现Http相关请求,本文介绍Http Get请求的简单实用方法。 下面是Qt中进行Http请求的简单步骤: 定义QNetworkAccessManager指针及槽函数 创建QNetworkAccessManager对象并关联槽函数 在类的析构 阅读全文
posted @ 2024-11-07 23:06 xhubobo 阅读(325) 评论(0) 推荐(0)
摘要:1、为Qt添加网络模块 打开.pro文件,添加network模块: QT += core gui network 2、Qt在调试模式下UI显示中文正常,输出显示中文乱码 这种情况下可以修改系统编码。 3、获取当前时间 QDateTime currentDateTime = QDateTime::cu 阅读全文
posted @ 2024-11-06 17:35 xhubobo 阅读(35) 评论(0) 推荐(0)