自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Qt5 中使用 QPdfWriter 生成 PDF 文件:基于实际项目代码解析

本文详细介绍了Qt中生成PDF文件的两种主要方法:使用QPdfWriter手动绘制和利用QTextDocument转换富文本。重点讲解了QPdfWriter的核心用法,包括页面设置、文本/表格/图片绘制、分页控制等关键技术点,并分享了事件通报生成中的红头标题、自动换行等实用技巧。文章特别指出了QPdfWriter和QPainter不能作为成员变量的重要注意事项,建议采用局部对象方式确保PDF文件正确生成。最后简要提及了其他备选方案,为Qt开发者提供了全面的PDF生成解决方案。

2026-03-11 15:27:25 527

原创 Qt 数据库模块详解(从驱动编译到性能优化)

Qt SQL模块提供跨平台数据库访问接口,支持多种主流数据库如SQLite、MySQL等。核心类包括QSqlDatabase(管理连接)、QSqlQuery(执行SQL)等。数据库驱动分为内置(如SQLite)和需手动编译(如MySQL)两类。使用MySQL需先编译驱动插件并部署到指定目录。连接MySQL时需设置主机、端口等参数,支持事务处理和参数绑定查询。常见问题包括驱动加载失败(需检查插件路径和依赖库)、连接参数错误等。通过Qt的统一接口,开发者可以用相同代码操作不同数据库,简化开发流程。

2026-03-09 16:48:00 594

原创 Qt 单元测试框架QTestLib

本文介绍了Qt单元测试框架QTestLib的使用方法。主要内容包括:1)工程创建步骤,通过Qt Creator向导生成测试项目结构;2)基本测试函数编写规范,包括4个特殊生命周期函数;3)核心测试宏的使用,如QVERIFY、QCOMPARE等;4)高级功能:测试报告输出、GUI事件模拟、AutoTest插件可视化测试;5)数据驱动测试实现方法。QTestLib提供了一套完整的单元测试解决方案,支持功能验证、GUI测试和性能基准测试,可有效提升Qt应用的代码质量。

2026-03-09 14:54:56 513

原创 Qt 事件系统详解

本文介绍了Qt事件系统的基本概念与核心处理机制,包括键盘、鼠标、定时器等常见事件类型。详细讲解了三种事件处理方式:重写特定事件函数、事件分发器和事件过滤器,并通过代码示例演示了鼠标点击、键盘输入、定时器等具体实现。文章还涵盖拖拽、绘图等高级事件,为Qt应用程序开发提供了全面的技术指导。

2026-03-08 15:34:08 435

原创 Qt自制工具分享之文件编码批量转换工具

本文介绍了一款基于Qt开发的文件编码转换工具,主要功能包括:支持批量文件/目录转换、自动检测编码(UTF-8/GB18030等)、文本文件过滤、异步多线程处理等。关键技术包括:1)高效编码检测算法(仅读取4KB数据);2)使用QtConcurrent实现异步转换;3)QSaveFile确保写入安全;4)自定义QSS亮色主题美化界面。该工具具有性能优化、安全可靠、界面友好等特点,可有效解决开发中常见的文件编码混乱问题。

2026-03-05 20:12:29 593

原创 Qt 多媒体模块开发指南

本文介绍了Qt多媒体模块的核心功能与使用方法。主要内容包括:1) 多媒体模块概述,涵盖音频播放、视频处理、摄像头操作等核心API;2) 环境配置与平台依赖说明,重点介绍Qt6的FFmpeg后端特性;3) 音频播放实现,对比Qt5/Qt6差异,展示QSound和QMediaPlayer的使用方法;4) 提供进度控制、循环播放等进阶功能实现代码。文章还总结了不同平台下的注意事项和常见问题解决方案,帮助开发者快速实现跨平台多媒体应用开发。

2026-03-05 08:56:37 479

原创 Qt QSS 完全指南

本文介绍了Qt样式表(QSS)的使用方法,包括基础语法、选择器类型、常用属性和应用示例。QSS借鉴自CSS,可自定义控件外观而无需继承或重绘。主要内容涵盖:1)基础语法结构;2)9种选择器(通用、类型、ID、属性等)及其用法;3)字体和背景等常用属性;4)伪状态和子控件的特殊样式设置。通过QSS可以高效实现Qt界面个性化定制,适用于大多数桌面应用程序的美化需求。

2026-03-04 16:06:17 117

原创 Qt 多线程编程完全指南

本文全面介绍了Qt多线程编程技术,包括QThread的两种使用方式(继承重写run()和moveToThread)、线程同步机制(QMutex、QReadWriteLock、QWaitCondition等)以及QtConcurrent高级并发模块。重点分析了多线程编程中的关键注意事项,如线程安全、资源管理、跨线程通信等常见陷阱,并提供了详细的代码示例和解决方案。文章还对比了不同线程技术的适用场景,为开发者提供了多线程技术选型指南,帮助编写高效、安全的跨平台并发程序。

2026-03-04 14:31:55 206

原创 Ubuntu下使用CMake编译GTest库(Google公司的测试库)并测试

本文介绍了在Linux系统下编译和使用Google Test(GTest)库的完整流程。首先通过apt-get安装libgtest-dev,然后使用CMake在/usr/src/gtest目录下编译生成静态库文件libgtest.a和libgtest_main.a。文章提供了详细的编译步骤,包括安装依赖、构建项目以及将库文件复制到系统路径。随后通过一个简单的测试程序验证了库的可用性,展示了测试用例的编写方法、编译命令(需添加-lgtest和-lpthread参数)以及测试运行结果。整个过程强调在Ubuntu

2026-02-28 17:08:19 398

原创 银河麒麟V10桌面版操作(Linux)系统下MySQL数据库的详细安装、配置(基础配置和主从复制配置)流程(即拿即用)

本文详细介绍了在银河麒麟V10国产操作系统上安装配置MySQL 8.0数据库的全过程。由于项目初期需求未明确,作者选择了熟悉的MySQL而非系统自带的Mariadb。文章包含环境准备、用户创建、目录配置、环境变量设置、配置文件编写、数据库初始化、服务启动、密码修改等完整步骤,并提供了远程访问配置和主从复制方案。特别对比了互为主从复制和双主复制的区别,建议需要高可用性的场景选择双主复制方案。全文兼顾实用性和技术深度,既可作为国产系统数据库部署指南,也为数据库高可用架构选型提供参考。

2026-02-26 17:27:50 1525

原创 Qt + MSVC 配置踩坑实录:从“Kit中识别不到MSVC”到“Debug崩溃”的完整解决方案

本文记录了在Qt Creator中配置MSVC编译器的完整过程及解决方案。主要问题包括:构建套件缺少MSVC编译器、自动检测的编译器ABI错误(显示msvc2005)、编译后中文乱码、Debug版程序崩溃(缺少ucrtbased.dll)。通过安装MSVC v141工具集、手动配置编译器ABI、添加UTF-8编译选项、安装完整Windows SDK调试工具等步骤,最终成功解决了所有问题。文章详细描述了每个问题的现象、原因分析和具体解决步骤,为Qt开发者从MinGW切换到MSVC提供了完整参考方案。

2026-02-23 15:06:32 1491

原创 Qt自制工具分享之重复文件清理工具

本文介绍了一款基于Qt开发的跨平台重复文件检测与清理工具。关键技术包括线程安全管理、文件哈希计算优化、树形控件展示等。工具提供直观的用户界面,支持文件筛选、右键操作等功能,具有高效、安全、跨平台等特点,可帮助用户清理重复文件,释放存储空间。

2026-02-01 21:41:24 577

原创 Qt自制工具分享之文件搜索工具

本文介绍了一个基于Qt框架开发的文件搜索工具,支持按文件名和文件内容搜索。工具可自动识别多种文件编码(UTF-8、UTF-16、GB18030等),并提供CSV表格化预览和文本文件预览功能。系统采用模块化设计,包含核心模块(编码检测)、界面模块(主窗口、预览组件)和资源文件。核心功能包括基于BOM标记的编码检测、正则表达式搜索和CSV解析(支持双引号转义)。未来计划扩展对Office文件的内容搜索功能。该工具具有现代化界面,支持递归目录搜索和文件过滤,为用户提供高效的文件检索体验。

2026-01-29 17:04:13 662

原创 Qt自制工具分享之代码统计工具

本文介绍了一个跨平台代码统计工具的开发过程。该工具基于Qt框架实现,支持C/C++、Java等多种语言的代码统计,具备文件过滤、注释识别、实时统计等功能。核心模块包括递归文件搜索、状态机实现的注释识别算法和多格式导出功能。开发中解决了多行注释识别等技术难题,通过状态机模式确保统计准确性。工具具有界面友好、跨平台兼容等特点,支持Windows、Linux和macOS系统,能满足开发者的代码统计需求。

2026-01-27 23:49:08 613

原创 Qt自制工具分享之颜色拾取工具

该项目是一个功能完整的PC端颜色拾取工具,支持两种拾色模式:内部色相环拾色和外部屏幕拾色。项目实现了放大镜预览、倍率调节、颜色值转换等实用功能。

2026-01-25 23:16:01 687

原创 银河麒麟系统开发总结之设置外部程序开机自启

本文介绍了在Linux系统中设置程序开机自启动的方法。具体步骤包括:1.进入系统自启动目录(路径可能因系统而异);2.创建.desktop启动脚本;3.配置脚本内容,包含程序名称、执行路径等参数;4.赋予脚本可执行权限;5.重启验证设置是否生效。该方法适用于GNOME桌面环境,通过修改自启动配置文件实现程序自动运行。

2025-07-29 10:09:30 898

原创 银河麒麟系统开发总结之将shell脚本设置为开机自启

本文介绍了在银河麒麟系统中设置开机自启动脚本的方法:1)创建启动脚本并添加需执行的命令;2)设置可执行权限;3)通过软链接将脚本添加到/etc/rc.d/rc.local;4)验证链接状态后重启系统即可生效。文中特别提醒脚本路径需替换为实际值,且不同系统版本可能存在操作差异。该方法通过简单的7个步骤实现了系统启动时的自动任务执行。

2025-07-29 10:01:23 1985

原创 银河麒麟系统开发总结之同步两台服务器的时间

摘要: 在两台无法联网但均安装NTP的服务器中,可将一台设为NTP服务器,另一台作为客户端同步时间。

2025-07-29 09:47:10 858

原创 银河麒麟系统开发总结之服务器版和桌面版之间建立SSH信任

本文介绍了在银河麒麟服务器版与桌面版之间建立SSH信任连接的方法。在已有服务器版间信任方案的基础上,只需在桌面版的~/.ssh/config文件中添加服务器信息:包括自定义别名、服务器IP地址、用户名和私钥路径。配置完成后,通过ssh serverName命令即可实现免密登录服务器版。该方法简化了跨版本系统的连接流程,提升了操作便利性。(99字)

2025-07-29 09:29:57 452

原创 银河麒麟系统开发总结之服务器间使用scp远程拷贝避免手动输入密码

本文介绍了三种Linux服务器间使用scp命令安全传输文件的方法。方案一通过建立SSH信任关系实现免密传输,需在主从服务器间交换公钥;方案二使用sshpass工具自动输入密码;方案三利用expect脚本实现自动化传输。各方案均提供了Ubuntu/CentOS系统的安装检查命令,其中方案三适合需要自动化执行的场景。三种方法各有适用场景,用户可根据实际需求选择合适方案实现服务器间的安全文件传输。

2025-07-29 09:09:14 1907

原创 Qt源码编译MySQL数据库驱动(Windows和Linux环境)

本文详细介绍了在Windows和Linux系统下编译Qt MySQL驱动的完整步骤。针对高版本Qt不再自带MySQL驱动的问题,作者以Qt5.14.2(Windows)和Qt5.9.8(Linux)为例,从环境准备到编译过程进行了详细说明。关键步骤包括配置环境变量、修改.pro文件路径设置、处理编译报错等,特别强调了Windows下需要将MySQL动态库复制到Qt编译器目录的重要细节。

2025-07-04 09:41:57 1909

原创 OpenCV源码CMake编译并与Qt集成

本文详细介绍了在Windows系统下使用Qt、CMake和MinGW编译器编译OpenCV 4.5.0的完整流程。

2025-03-07 16:27:24 1217

原创 Qt开发之http开发缺少OpenSSL运行时库

在做开发时最让人抓狂的就是:代码写好了,编译、运行都没问题,开始测试功能,信心满满的鼠标一点——报了个错。在使用Qt做Http开发时,也会出现这种情况,如下图:问题出现的原因就是缺少OpenSSL的运行时库。以上就是对使用Qt做Http开发时,找不到OpenSSL动态库的问题分析及解决方案的全部内容。对于Linux系统,方式类似,只是库的名称有所差别。

2025-03-04 11:49:09 899

原创 boost库的编译、裁剪及使用(以regex类为例)

本文将介绍如何编译、裁剪 boost 库,以及裁剪后如何使用。

2025-03-01 13:51:27 2222

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除