《Qt 项目实战经历全记录》
文章平均质量分 76
记录Qt项目实际应用
老菜鸟的每一天
记录工作的点滴
展开
-
Qt Modbus 2 通信实现
上一文章主要了解下Modbus协议和事务处理流程,本章则直接贴放代码实现qt 上位机与温控器通讯。项目主要实现定时读取温度、设置温度、开始加热和停止加热四个功能。采用的是 Modbus Rtu 通信。原创 2024-10-30 16:12:34 · 270 阅读 · 0 评论 -
Qt Modbus初识
项目中,需要用modbus与温控器通信,控制面板的加热温度,Qt框架下已经提供了modbus模块。原创 2024-10-30 15:32:07 · 864 阅读 · 0 评论 -
Qt与下位机通信时,如何等待下位机回复和超时处理
在C++或Qt中实现与下位机(例如嵌入式设备、传感器等)的通信,并且需要等待对方回复,如果几秒后没有收到回复则执行下一步动作,可以使用多种方法来实现这种超时机制原创 2024-10-14 10:20:32 · 523 阅读 · 0 评论 -
QML可拉伸、可拖拽为独立窗口的UI框架
代码实现窗口分割首先是分模块可调整大小,可以使用Qt已经封装好的组件SplitView,使用的版本是QtQuick.Controls 2.14,效果上来说和QSplitter相同。原创 2024-10-11 15:09:49 · 515 阅读 · 0 评论 -
QT解决因屏幕分辨率和缩放产生的界面异常(转载)
在某些情况下,由于屏幕分辨率和缩放比例不是100%,导致一些界面或字体的显示出现异常。此时需要获取到分辨率和缩放比例等相关参数,加以矫正,使界面在不同分辨率和缩放比例下都显示正常。转载 2024-10-11 10:57:14 · 176 阅读 · 0 评论 -
QML TableView 表格总结
qml 的资料相对qt widget来说,还是偏少啊,无论从帮助文档还是从网上搜索。笔者项目中遇到的一些展示控件,需要用tableview来展示,总结了一下两种方式,都是基于Tableview来实现的,一种是基于 QtQuick.Controls 1.4 版本,一种是高版本 QtQuick 2.14。对业务代码进行了删除,只保留了跟表格有关的代码。几种最重要的几个属性就是。主要关注一下属性设置。原创 2024-06-30 15:32:31 · 812 阅读 · 1 评论 -
大小端与网络字节序和 wireshark 抓包分析
采用大小模式对数据进行存放的主要区别在于在存放的字节顺序,大端方式将高位存放在低地址,小端方式将高位存放在高地址。原创 2024-06-19 18:50:06 · 1278 阅读 · 0 评论 -
qt pro工程文件通用宏定义
在 Qt .pro 文件中,有一些预定义的宏(或变量),它们代表了特定的路径或与项目、构建环境相关的信息原创 2024-06-19 15:33:41 · 898 阅读 · 0 评论 -
QT 实现解密m3u8文件
qt 实现解密 M3U8文件,拿到真正ts数据原创 2023-11-04 16:24:59 · 725 阅读 · 0 评论 -
qt 实现pdf阅读器
pdfium.dll 是 Adobe 开源的一款 PDF 渲染引擎。它是一个跨平台的库(支持 Windows、Linux、MacOS 等多个平台),功能强大且易于使用。pdfium.dll 不仅支持 PDF 文件的解析、渲染、打印,还能够嵌入到自己的应用程序中使用。pdfium.dll 的开源地址在 GitHub 上,对于开发者来说非常友好,文档详细且示例丰富。几乎可以做到零开发成本,就能够使用 pdfium.dll 库为自己的应用程序添加 PDF 渲染功能。原创 2023-10-18 11:00:38 · 2515 阅读 · 0 评论 -
qt 读取txt文本内容时,中文乱码
项目中,需要在TF卡中做类似txt阅读器的功能,因为app是在嵌入式系统下运行的,发现当读取txt的文本格式为ANSI时,中文的显示是乱码,故记录下解决方法。原创 2023-10-17 18:46:58 · 1358 阅读 · 0 评论 -
qt 展示TF卡(USB、SD)内容时,中文乱码问题
在一款教育硬件产品上增加了TF卡的功能,在展示文件系统内容的时候,发现无论文件夹或者文件名以及内容中包含的中文字符都是乱码。原创 2023-10-10 14:31:12 · 490 阅读 · 0 评论 -
linux下打包qt程序
linux下 qt的程序打包原创 2023-09-05 16:18:51 · 801 阅读 · 0 评论 -
QProcess 调用 ffmpeg来处理音频
在文章中,实现的是边播放变解析音频数据来统计音频的分贝大小,并不满足实际项目的需求,有的视频声音正常,有的视频声音就偏低,即使放到最大音量声音也是比较小,本文的目的是直接通过对本地视频进行检测,拿出关键指标,来进行对音频处理。原创 2023-09-04 19:06:41 · 1000 阅读 · 0 评论 -
qt 实现音视频的分贝检测系统
目前的产品经常播放m3u8流,有的视频声音正常,有的视频声音就偏低,即使放到最大音量声音也是比较小,所以就产生了某种需求,能否自动感知视频声音的大小,如果发现声音比较小的情况,就自动放大比如系统音量增益等。原创 2023-08-25 11:20:15 · 1502 阅读 · 0 评论 -
qml Image 内存问题
最后,讲一些题外话:Image 有一个属性 cache:true.images.翻译:指定是否应缓存图像。默认值是true。在处理大图像时,将缓存设置为false非常有用,以确保它们不会以小的“ui元素”图像为代价进行缓存。当用一系列图片来做动画时,记得cache 设置成false,不然内存会消耗的非常大。原创 2023-04-12 17:11:40 · 1012 阅读 · 0 评论 -
qml TextArea 实现文字缩略
实现qml 下 TextArea的文字缩略原创 2023-04-12 16:53:45 · 344 阅读 · 0 评论 -
(转载) Qt deletelater函数分析(2)
QObject deletelater 分析转载 2023-04-12 16:42:37 · 333 阅读 · 0 评论 -
(转载) Qt deletelater函数分析(1)
的原理是 **QObject::deleteLater()**并没有将对象立即销毁,而是向主消息循环发送了一个event,下一次主消息循环收到这个event之后才会销毁对象。所有继承自QObejet类的类都会维护一个自己的子对象列表,同时会存储自己的父对象,所以界面中的各个控件(各个控价的基类都是QObject)可以实现层次!“当我们使用父对象来创建一个对象的时候 ,父对象会把这个对象添加到自己的子对象列表中。转载 2023-04-12 16:30:37 · 300 阅读 · 0 评论 -
(转载)深度解析qml引擎---(2)绑定(binding)
qml binding转载 2023-04-12 16:06:49 · 485 阅读 · 0 评论 -
(转载)深度解析qml引擎---(1)Qml文件加载
即抽象语法树,对于上面的qml文件,对应的语法树如下:这个AST是相当底层的,了解一下即可。然后,该语法树会被一个visitor进行遍历,将其转换成一个较为高层的数据结构,该数据结构包含。转载 2023-04-12 15:56:00 · 569 阅读 · 0 评论 -
qml 文件中 JSON的使用
qml 文件代码中少不了使用JSON对象来处理各种字符串或者Json对象,本文简单总结下JSON的常用功能常用的方法基本就这些。原创 2023-04-12 15:17:48 · 1843 阅读 · 0 评论 -
qml m3u8流播放时,卡主修复策略
MediaPlayer 播放 m3u8流,网络切换时,卡住原创 2023-02-10 15:09:07 · 886 阅读 · 0 评论 -
Qml 动画线程 渲染线程 还是UI主线程,Animation or Animator
qml 动画线程 animation Animator原创 2023-01-30 20:11:39 · 881 阅读 · 1 评论 -
Qt 之 全局的QNetworkAccessManager
全局 QNetworkAccessManager原创 2022-09-18 15:35:53 · 2171 阅读 · 0 评论 -
Qt 之 QVideoFrame转换为QImage
QVideoFrame 转换为 QIamge几种方法原创 2022-09-18 15:09:09 · 3576 阅读 · 3 评论 -
Qt之 读取 /dev/input/event*设备 并解析
qt 读取/dev/input/event 设备,并解析数据原创 2022-05-12 16:01:00 · 8327 阅读 · 0 评论 -
QML 中使用 QAbstractListModel
QML 中使用 QAbstractListModel 作为 ListView 的 model 实例转载 2022-04-30 10:52:29 · 2114 阅读 · 1 评论 -
Qt 之 MediaPlayer 音视频播放
QMediaPlayer 用法原创 2022-04-30 10:40:04 · 10536 阅读 · 0 评论 -
qml 实现按钮样式( 带个小三角)
qml 带有小三角的按钮原创 2022-04-16 21:58:52 · 1584 阅读 · 0 评论 -
qml 实现展示本地文件系统
QT 遍历本地文件系统,QDirModel和 QFileSystemModel 以及qml中的FolderListModel原创 2022-04-16 21:49:48 · 2539 阅读 · 8 评论 -
QML:ListElement: cannot use script for property value
ListElement: cannot use script for property value 解决方法原创 2022-04-16 20:38:32 · 1781 阅读 · 0 评论 -
c++ 实现 Qt 信号槽机制
来自 https://gitee.com/jiang_xu_hui/tan-meta-objectTanMetaObject介绍80行代码实现Qt信号槽机制。去除无用行估计也就40行。使用说明仿Qt的信号槽,本来打算用c++20的概念和约束来写,但是国内根本没有普及c++20,最后还是用了c++11.main.cpp内有使用的例子。TanMetaObject.h#include <vector>#include <utility>template<t转载 2022-04-10 12:02:52 · 734 阅读 · 0 评论 -
QTest 单元测试框架及单元测试思考
qt 单元测试框架 QTEST 及思考原创 2022-04-10 11:51:44 · 11138 阅读 · 0 评论 -
qt 之 QJSEngine 相关
qt5 QJSEngine QJSValue原创 2022-04-05 19:56:51 · 2926 阅读 · 0 评论 -
Qt Script 模块 for Qt4
QT4 中的 Qt Script模块简介原创 2022-04-05 19:40:25 · 3630 阅读 · 2 评论 -
Qt 在pro文件中配置条件编译
pro中 条件编译,定义宏变量原创 2022-04-03 17:42:03 · 2857 阅读 · 0 评论 -
qml 如何遍历view中delegate的控件属性?
如何遍历listview,gridview中的delegete原创 2022-04-03 17:32:58 · 1615 阅读 · 0 评论 -
Qt 隐式共享之深拷贝、浅拷贝
深拷贝、浅拷贝,隐式共享原创 2022-04-03 17:03:57 · 3868 阅读 · 0 评论 -
Qt 之文件排序(避免出现1. txt 10.txt 11.txt 2.txt.20.txt....)
qt 的文件排序规则定制原创 2022-03-27 17:46:19 · 3593 阅读 · 1 评论