- 博客(49)
- 资源 (2)
- 收藏
- 关注
原创 QtWindows任务栏
如上所示,首先需要构造QWinTaskbarButton,可以通过函数setOverlayIcon为其设置图标,此处设置火箭的图标,可以增加额外的提示和趣味性。需要注意的是,windowHandle()需要在窗体第一次show()之后,才能获得到正确的原生窗口指针,Qt的窗体在构造时并未构造原生窗体,只有在show()之后才会真正去创建,因此一般是在需要使用才会创建QWinTaskbarButton并赋值,也可以在showEvent中,而不是在QMainWindow的构造函数内完成。
2024-05-05 23:21:44
1069
1
原创 QML中常见热区及层级结构
热区嵌套问题,本质上就是事件传递的问题,通常就是上层组件截断相关事件,导致下层无法接受对应的信号,抑或是接受的信号无法正确成对,如接收到鼠标按下事件缺无法接收到鼠标松开事件。排查时需要重点关注事件的传递。
2024-02-08 17:05:25
1192
原创 QML中常见布局方法
QML中常见布局方法,包含锚定(anchors)、定位器(Row/Column/Grid/Flow)、布局管理器(RowLayout/ColumnLayout/GridLayout/StackLayout)
2023-12-03 22:17:34
3262
20
原创 QML使用滚轮/触控板实现水平滚动/垂直滚动/缩放功能
实现上述功能主要使用到两个组件MouseArea、PinchArea,MouseArea主要是进行鼠标事件的操作和部分触控板事件的操作,PinchArea主要是Mac下识别触控板的双指缩放。
2023-07-22 17:06:55
1536
2
原创 Qt国际化的方法
在进行客户开发时,通常需要考虑多语言的场景,而这个Qt已经提供了成熟的多语言方案,也就是QtLinguist,但是网上很多时针对qmake的资料,下面就对其在CMake实际使用流程进行介绍。
2023-06-10 16:43:39
1179
16
原创 Qt线程的几种使用方法
目前Qt的多线程调用提供了三种方式,一种是子类化QThread后重写run函数,一种是将对象移动到特定线程中,还有一种是通过重写QRunnable的run函数搭配线程池实现,最后一种则是调用高级接口Qt::Concurrent。以上是通过子类化QThread后重写run函数实现子线程的调用,其中只有run函数内属于子线程,也就是QThread只是一个线程管理类,而其实例本身并不是一个线程,其他的成员和run函数并不在同一线程。需要注意的是,上述调用线程的方法已经过时,目前官方不推荐使用。
2023-06-10 16:18:24
3476
1
原创 QCameraViewfinder的使用
本文是简单使用Qt快速使用摄像头完成截图等工作,主要涉及QCamera、QCameraViewfinder、QCameraImageCapture这三个类。QCamera通过相机的信息创建,用于控制开始接收图形、停止接收图像。QCameraViewfinder则是图像的展示窗口,相当于View的作用。QCameraImageCapture用于截图操作,也是本文的主要目的。
2023-06-10 15:58:35
4045
2
原创 QML中一种模型基类
此处说的模型和之前所说的QStandardItemModel并不是一个概念,是一个更广泛的概念,是可以是继承QObject并使用属性系统的简单类
2023-04-15 15:07:55
320
原创 Qt罗盘控件实现
目录引言实现引言为了优化交互体验,避免用户眨眼补帧,使用QPropertyAnimation进行按钮的绘制,效果如下:实现通过paintEvent绘制大椭圆和小椭圆,开关状态的切换只是改变小椭圆所在的位置,xPos放入动画类中随时间变化,动画运行的过程中禁止交互。#include <QWidget>#include <QPropertyAnimation>class SwitchControl : public QWidget{ Q_OBJECT
2021-12-29 20:30:43
930
原创 QJson读取及写入
QJson使用Json语法生成Json解析JsonJson语法1.数据格式为"key:value",名称与值以分号分隔2.数据间逗号分隔3.大括号 {} 保存对象4.中括号 [] 保存数组,数组可以包含多个对象例子如下:在这里插入代码片生成Json解析Json...
2021-11-28 22:42:10
2987
原创 Qt关于Model/View大数据量性能测试
Qt关于Model/View大数据量性能测试引言测试思路测试结果测试中所遇问题测试代码引言项目中大量使用了设备树,代码是通过Model/View实现的。当设备数量达到1w+时,主界面出现明显卡顿,十有八九是代码实现问题,但在这之前需要先验证Model/View框架的性能,确保重构的基础是牢靠的。测试思路依项目需要,测试的model大小应远大于1w+且考虑树形结构,目前设置为10w的初始节点,每个初始节点下再挂上5个子节点,也就是总量为60w。为模拟设备变化情况,设置了定时器每个1s中随机生成一类事
2021-10-24 10:53:20
1720
8
原创 Ubuntu20.04配置distcc(联合编译/分布式编译)
目录安装distcc环境变量设置设置自启动设置编译参数监控编译情况(distccmon-gnome)安装distccsudo apt updatesudo apt install ccachesudo apt install distccsudo apt install distccmon-gnome#distccmon-gnome为监控应用环境变量设置vim /etc/profile添加如下:export PATH=/usr/lib/distcc:$PATHexport DIST
2021-09-04 17:19:31
1639
QtWindows任务栏Demo
2024-05-05
Qt加载腾讯地图(C++代码)
2022-12-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人