Qt Quick/QML入门到精通
该专栏为热销专栏榜 第10名
文章平均质量分 75
Qt Quick入门到精通、讲解所有常用知识、并且长期不定时更新高质量文章,在专栏第一章底部获取资源(包括合成大西瓜源码、微信聊天源码、listview拖拽源码等)
优惠券已抵扣
余额抵扣
还需支付
¥299.90
¥399.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
诺谦
热爱生活 活在当下
展开
-
102.qt qml-最全Table交互之多列固定、行列拖拽、自定义委托、标题交互使用教程
qt qml-最全Table交互之多列固定、行列拖拽、自定义委托、标题交互、使用教程原创 2024-07-12 16:20:21 · 818 阅读 · 0 评论 -
Qt Quick/QML入门到精通_专栏demo对应文章目录(目前50个左右demo/长期更新)
自定义图标下拉列表框的效果如下所示:自定义三态按钮的效果如下所示:传送门:53.qt quick-自定义三态按钮、自定义图标下拉列表框_诺谦的博客-CSDN博客传送门:59.qt quick-qml调色板(颜色取色器)实现、自定义QQuickStyle样式_诺谦的博客-CSDN博客63.qt quick-QML侧边滑动栏(不需要任何图片资源,支持自定义左右方向和大小)_诺谦的博客-CSDN博客_qt实现好看侧边栏。...原创 2022-09-01 13:17:40 · 14373 阅读 · 6 评论 -
66.qt quick- 高仿微信局域网聊天V5版本(新增多线程文件收发、无需服务器实现、支持Windows/Linux/Mac系统)
在之前V4版本40.qt quick- 高仿微信实现局域网聊天V4版本(支持gif动图表情包、消息聊天、拖动缩放窗口、支持Linux编译)..._诺谦的博客-CSDN博客我们已经有了以下功能:添加登录界面、 UDP校验登录、 皮肤更换、 3D旋转(主界面和登录界面之间切换) 、 支持拖动和更改窗口大小、 可以单独聊天、也可以在聊天室所有人聊天、 支持收发gif表情包(支持粘贴复制)、 自动刷新当前好友在线人数等、 同时支持Linux和Windows编译运行本章继续添加:多线程文原创 2022-05-04 14:44:44 · 4038 阅读 · 1 评论 -
25.Qt Quick QML-500行代码实现“合成大西瓜游戏“
"合成大西瓜"这个游戏在年前很火热,还上过微博热搜,最近便玩了一阵还挺有意思的,所以研究了一下小球碰撞原理,自己亲自手写碰撞算法来实现一个合成大西瓜游戏.并支持任意大小布局,你想玩多大面积,就拖多大面积,只要面积够大,认真玩下去,合100个大西瓜都可以.哈哈~~~1.游戏介绍游戏里面总共有11个水果,两个相同水果的合成一个较大的水果,最终合成一个大西瓜便不能继续合下去了:然而博主自己写...原创 2021-05-27 00:28:00 · 2340 阅读 · 2 评论 -
104.qt qml-加载谷歌矢量图标字体库,支持8665个矢量图标显示
接近9000个自定义的矢量图标,支持随意改色、任意像素大小,对以后的软件开发提供了非常快捷方便流程原创 2024-09-11 13:54:23 · 126 阅读 · 0 评论 -
103.qt qml-最全Table新增下拉复制功能
在上篇文章我们实现了大部分功能,所以本章实现下拉复制功能。原创 2024-07-29 15:22:38 · 271 阅读 · 1 评论 -
101.qt qml-自定义日历控件2-附带动画效果
QianWindow2.5版本及以上提供,源码位于:在源码中提供了一个showComponent属性,该属性可以用户自定义显示层,默认提供的是一个输入框显示,也就是下面这一块区域:text: "选择时间: "YaheiText{"请输入日期" : _qianCalendarInputField.currentDateTime.toLocaleString(Qt.locale(), "ddd yyyy/MM/dd")print("你选择了:", currentDateTime)原创 2024-06-17 11:38:58 · 672 阅读 · 0 评论 -
100.qt qml-MultiPointTouchArea多点触摸缩放拖拽
它提供了一个mouseEnabled属性,该属性默认为true,也就是说也会处理鼠标事件,鼠标事件其实就是当个触摸点,如果设置为false,则只会处理多个触摸的事件,并且将单个触摸点事件(鼠标事件)交给其它能支持鼠标事件的对象处理(比如MouseArea)MultiPointTouchArea是一个不可见的项目,用于跟踪多个触摸点,它的父类是Item,所以我们可以通过enabled来设置触摸是启用还是禁用。接下来我们添加偏移点。代码已在触摸屏上已测试通过。原创 2024-04-23 18:49:28 · 703 阅读 · 0 评论 -
99.qt qml-单例程序实现
Qt官方之前出过QTSingleApplication,用于实现只启动一个实例,并在启动时可以向向另一个实例通信(依赖于QtNetwork模块),该模块是一个独立模块,需要git上下载,所以本章demo已上传至专栏群,方便大家直接用。由于,该示例只是简单讲解了系统托盘实现,并没有实现单例程序,所以多次打开后就会出现多个exe出现的可能,本章出一章QML单例程序实现, 多次打开始终只显示出第一个打开过的程序。然后我们基于该模块的方式实现,修改为qml方式的。58.qt quick-qml系统托盘实现。原创 2024-03-04 15:57:17 · 623 阅读 · 0 评论 -
98.qt qml-使用曲线图综合示例、支持多种鼠标交互、支持百万数据显示(已适配黑白风格)
let i;for(i = 0;i原创 2023-11-18 20:47:28 · 2019 阅读 · 0 评论 -
97.qt qml-自定义Table之实现ctrl与shift多选
当我们按下ctrl鼠标左键按下移动时,需要提前关闭interactive属性,否则会造成Table滑动页面,然后根据鼠标位置来获取具体行,并对其进行 选中/取消选中。参考windows文件夹,记录用户点击的第一行,然后根据shift按下的另一行来实现多选。原创 2023-11-18 19:34:10 · 934 阅读 · 0 评论 -
96.qt qml-http之XMLHttpRequest介绍详解使用
Post不同内容的时候,Content-Type需要自己去改变不同类型(GET方法设置该请求头无效)Content-Length请求头一般不需要设置,会自动根据请求的数据大小来计算。原创 2023-09-27 20:28:10 · 1912 阅读 · 0 评论 -
95.qt qml-诺谦通用可扩展多功能QML界面
如下图所示:自带一个功能界面,可以通过功能界面添加不同功能,并且可以固定到顶部水平导航栏中,对于N多小功能的项目而言,非常方便,这样用户就可以根据自己喜好来使用自己常用的功能了。原创 2023-09-16 15:25:35 · 1988 阅读 · 3 评论 -
94.qt qml-分页Table表格组件
然后我们又学习了Table实现,所以本章实现一个分页Table表格组件,配合分页控件, 模拟请求服务器数据来实现数据分解效果,因为一般使用分页的时候,一般都是分页请求,避免数据量过多,导致ui卡顿。示例界面文件位于: qrc:/pages/QianControlPages/QianPaginationTablePage.qml。原创 2023-07-25 21:10:11 · 1785 阅读 · 1 评论 -
93.qt qml-自定义Table优化(新增:水平拖拽/缩放自适应/选择使能/自定义委托)
自定义委托一般都是根据不同列来做不同编辑功能实现,所以我们将自定义委托放在了TableHeader中(为了方便),如果后面需要升级迭代再进行优化。TableHeader如下所示:这里,我们默认设置为true,所以每处数据都是可以编辑的,默认委托modifyDelegation 为_textEditComponent(文本框编辑)。display: "姓名"width: 100// ComboBox编辑委托model: ["王二", "张三", "李四", "小红", "小明", "老明"]原创 2023-07-25 20:59:31 · 1026 阅读 · 0 评论 -
92.qt qml-日期/日期时间/时间选择器(日历选择器)
QML日历组件我们之前移植过:67.qt quick-qml自定义日历组件(支持竖屏和横屏)_qml日历_诺谦的博客-CSDN博客但是该组件内部代码比较坑的就是全部使用自定义对象,导致性能不行,动画卡顿,并且不好加时间选择,所以本章我们重新学习,然后重构一个日期时间选择器,支持更改日期 或者 日期时间重构需要使用到Calendar类和样式类2.Calendar类介绍int,一周中各天的显示格式(在页眉中)。Locale.ShortFormat是默认的推荐格式。原创 2023-07-11 23:09:45 · 2399 阅读 · 0 评论 -
91.qt qml-圆角毛玻璃 高斯模糊
GaussianBlur效果通过使用高斯函数计算效果的算法模糊图像来软化图像。效果比FastBlur产生更高的质量,但渲染速度较慢。cached :bool, 此属性允许缓存效果输出像素,以提高渲染性能。每次更改源或效果属性时,必须更新缓存中的像素。会增加内存消耗,因为存储效果输出需要额外的内存缓冲区。所以我们建议在源属性或效果属性设置动画时禁用缓存。默认为 falsereal,高斯函数的一个参数,用于计算模糊的相邻像素权重。偏差越大,图像越模糊,但也会降低模糊的质量。原创 2023-07-11 19:47:17 · 1882 阅读 · 0 评论 -
90.qt qml-Table表格组件(支持表头表尾固定/自定义颜色/自定义操作按钮/排序)
qt qml-Table表格组件(支持表头表尾固定/自定义颜色/自定义操作按钮/插入排序)原创 2023-05-29 15:05:20 · 2967 阅读 · 7 评论 -
89.qt qml-WorkerScript多线程使用(无需C++代码)
由于我们自定义Table中需要实现排序,如下图所示:考虑到如果数据量太大的情况,为了避免主线程阻塞,所以我们添加多线程排序功能,为了方便大家更好学习qml组件,所以学习WorkerScript实现多线程,无需C++原创 2023-05-26 17:14:06 · 1067 阅读 · 0 评论 -
88.qt qml-TableView学习(一)
TableView继承于Flickable,默认支持拖拽,如果我们要设置拖拽只支持垂直的话,可以设置flickableDirection: Flickable.VerticalFlick。原创 2023-05-25 14:56:13 · 2276 阅读 · 2 评论 -
87.qt qml-分页组件控件(支持设置任意折叠页数等)
截图如下所示:效果如下所示:未完待续,下章实现Table表格,配合分页控件, 模拟请求服务器数据来实现数据分解效果,因为一般使用分页的时候,一般都是分页请求,避免数据量过多,导致ui卡顿。原创 2023-05-24 19:13:40 · 1135 阅读 · 1 评论 -
86.qt qml-多种粒子特效按钮实现
截图如下所示:动图如下所示:支持黑白模式: 配合之前我们学习的:82.qt qml-2D粒子系统、粒子方向、粒子项(一)_诺谦的博客-CSDN博客83.qt qml-初步学习2D粒子影响器(二)_诺谦的博客-CSDN博客即可实现出来。以按钮特效3按钮为例: 按钮特效3主要是模拟星星和流星效果、星星的话我们通过'start'粒子组命名、然后流星头部通过'meteor'命名、流星尾巴通过‘meteorTail’命名、星星对应的粒子组如下所示:流星对应的粒子组如下所示:具体的下载QianWindow最新源码查看原创 2023-05-10 23:57:54 · 1870 阅读 · 2 评论 -
85.qt qml-炫酷烟花粒子特效(支持多种爆炸模式(文字)、爆炸阴影、背景场景)
qt qml-炫酷烟花粒子特效(支持多种爆炸模式、爆炸阴影、背景场景)、粒子组ParticleGroup、TrailEmitter跟随发射器和粒子组影响器GroupGoal原创 2023-04-27 16:39:41 · 1558 阅读 · 0 评论 -
84.qt qml-Sprite精灵、SpriteSequence、ImageParticle使用Sprite精灵动画(三)
qt qml-Sprite精灵、SpriteSequence、ImageParticle使用Sprite精灵动画详解原创 2023-04-25 21:15:14 · 839 阅读 · 0 评论 -
83.qt qml-初步学习2D粒子影响器(二)
由于QmlBook in chinese翻译过来的文字有些比较生疏难于理解,所以本章在它的基础上做些个人理解,建议学习的小伙伴最好配合QmlBook in chinese一起学习。原创 2023-04-21 18:37:04 · 755 阅读 · 0 评论 -
82.qt qml-2D粒子系统、粒子方向、粒子项(一)
粒子模拟的核心是粒子系统(ParticleSystem),它控制了共享时间线。一个场景下可以有多个粒子系统,每个都有自己独立的时间线。一个粒子使用发射器元素(Emitter)发射,使用粒子画笔(ParticlePainter)实现可视化,它可以是一张图片,一个QML项或者一个着色项(shader item)。一个发射器元素(Emitter)也提供向量来控制粒子方向。一个粒子被发送后就再也无法控制。粒子模型提供粒子控制器(Affector),它可以控制已发射粒子的参数。原创 2023-04-19 15:25:43 · 984 阅读 · 0 评论 -
81.qt qml-Canvas深入学习之好看的水纹波自定义控件V2
在我们之前38章38.qt quick-QML水纹波进度条_诺谦的博客-CSDN博客写过一个简单的水纹波:所以本质差不多.2.QianRippleChartPage代码Item {x:10y:10text: "外观参考ECharts 源码通过QML控件实现"text: " "text: " "text: " "text: " "id: btntext: " "spacing: 2id: chartfrom: 1to: 100value: 62text: "波峰数量:"原创 2023-04-11 15:43:52 · 1178 阅读 · 0 评论 -
80.qt qml-QianWindow炫酷界面框架-新增Canvas动态背景
如下图所示: 动图如下所示:如果我们使用图片,对于分辨率大的显示时,如果图片太小会失真,如果图片太大会占用很大内存,而且如果是动态图背景,那么至少40MB大小了.所以我们增加Canvas动态背景功能,而且Canvas还可以根据系统性能我们来进行内部代码优化.比单色背景有趣的多,后面会陆续增加其它好看的Canvas背景原创 2023-04-10 21:29:44 · 1341 阅读 · 0 评论 -
79.qt qml-如何在QML中使用QCustomPlot之曲线/折线示例(已适配黑白风格)
但我们添加完线段后,只需要重新更新下XY轴,然后在调用qcp.replot()重新渲染,图就出来了.所以感兴趣的可以自己去优化一下caurve曲线点的生成. 不过如果时间短的话, 还是建议尽量用折线。剩下的交互篇,本人就暂时没时间提供了,有经验的可以自己添加标记等操作。所以本章我们需要实现在QML中如何使用。我们学习了 qcp简单使用。原创 2023-03-29 20:04:19 · 2998 阅读 · 4 评论 -
78.qt QCustomPlot介绍
参考下载地址:1.添加帮助文档在QtCreator ——>工具——>选项——>帮助——>文档——>添加,选择qcustomplot.qch文件,确定,以后按F1就能跳转到QCustomPlot的帮助文档了。原创 2023-03-22 15:12:12 · 2323 阅读 · 0 评论 -
77.qt qml-QianWindow-V1版本界面讲解
由于我们需要兼容黑白风格,并且还要兼容渐变风格, 图片背景风格等所以我们的model属性比较多,分为常用属性和侧边栏属性,我们以暗黑风格为例,如下所示:Item{property string name : "暗黑风格"property bool shadow: false // 不支持阴影,因为黑色风格用阴影效果并不大(一般light模式才会为true)原创 2023-03-17 22:08:54 · 3901 阅读 · 1 评论 -
75.qt qml-通用QML界面V2-剪映暗黑风格界面
如下图所示: 我们在上个文章 71.qt quick-可伸展菜单-抽屉栏示例 通用QML界面(一键换肤)_qml换肤_诺谦的博客-CSDN博客基础上 新增了一个暗黑风格界面其中侧边栏是LeftSidebar.qml, 需要注意的是该侧边栏也可以设置右侧的哦.设置后如下所示: 其中侧边栏代码如下所示:然后侧边栏里的内容则是StretchEntry.qml伸展容器了,代码过多就不描述了后面会发第三最终版本、该demo已上传至专栏群(1.qml-创建第一个程序_诺谦的博客-CSDN博客) 文章底部获取源码原创 2023-03-13 19:11:20 · 1620 阅读 · 0 评论 -
74.qt quick-水平ListView拖拽选中换行、添加、删除、移动动画V2
委托采用共享model数据,之前版本是实现两个委托,导致每次model一更新都要更新两边显示。替换时,新增z级更新,避免move动画效果差。增加拖拽到边缘时,开启滚动动画效果。原创 2023-03-08 15:01:57 · 1358 阅读 · 0 评论 -
73.qt quick-通用可拖拽表盘示例(支持渐变)
【代码】73.qt quick-通用可拖拽表盘示例。原创 2022-12-28 16:51:47 · 1481 阅读 · 1 评论 -
72.qt quick-QQuickImageProvider加载QImage/QPixmap数据
QQuickImageProvider返回的图像将自动缓存,如果图像应该始终从图像提供程序获取,则将相关image或BorderImage对象的cache属性设置为false。中,Image只支持文件路径和网络路径,如果想加载纯数据(QImage或者QPixmap)内容,则需要使用QQuickImageProvider类接口实现图像请求。原创 2022-12-15 19:26:46 · 899 阅读 · 0 评论 -
71.qt quick-可伸展菜单-抽屉栏示例 通用QML界面(一键换肤)
特点:支持动态添加item、删除item、自适应界面附带添加删除、展开等动画同时支持qwidget、qml加载支持number提示(比如消息数量等)侧边抽屉栏支持动画伸展支持换肤、拖拽、最大化等原创 2022-12-10 18:08:24 · 4330 阅读 · 0 评论 -
70.qt quick-QQmlListProperty详解
qml与c++少不了类表传递、比如我们之前的好友列表、文件传输列表等等、用的是QListModel、QList类指针表传递、本章我们使用一个新的传递方式QQmlListProperty、shape.h主要是给qml提供一系列操作类、然后 Shape类则是提供给DrawBoard类,通过QQmlListProperty提供一个shape数组、所以。QQmlListProperty和QList类似,它是一个模板类、通过它我们可以方便的管理一个QList、优点就是能像。这里的shape数组则是通过。原创 2022-11-04 20:19:31 · 1608 阅读 · 0 评论 -
69.qt quick-qml控件类-灯控件(支持动画闪烁)
【代码】69.qt quick-qml控件类-灯控件(支持动画闪烁)原创 2022-09-13 19:29:06 · 2702 阅读 · 0 评论 -
68.qt quick-qml多级折叠下拉导航菜单 支持动态添加/卸载 支持qml/widget加载等
最近需要实现多级折叠菜单需求,所以干脆用qml实现一个多级折叠下拉导航菜单控件,每次点击item后,则发送信号通知widget切换界面即可,不仅支持qml、还支持QWidget!!!原创 2022-08-02 18:22:36 · 4223 阅读 · 0 评论 -
67.qt quick-qml自定义日历组件(支持竖屏和横屏)
从GitHub - papyros/qml-material: Material Design implemented in QtQuick移植下来的,凑合用.截图如下所示(已上传专栏群):效果如下所示:属于import QtQuick.Controls 1.x模块,所以使用时,需要引用下别名模块Properties: SignalsMethods改后的代码如下所示:整体来说,全部重写了,所以在性能上不怎么样,如果影响到性能最好重新实现一下.......原创 2022-06-22 21:49:06 · 1780 阅读 · 0 评论