QML 星形进度条:星形路径裁剪与自底向上填充

星形进度条把进度做成「给五角星上色」——五角星轮廓是固定的,进度决定填充高度,从底部往上填,填到哪进度就到哪。这种形式在评分、能量、成就进度这类场景里很合适,比普通线性进度条更有视觉趣味。QML 用 Canvas 画星形路径做裁剪,再用 fillRect 从底部往上画填充矩形,星形轮廓把填充限制在五角星形状内。

Demo 星形进度条

在这里插入图片描述

两种星形进度条同屏排开:渐变星形(黄到橙渐变 + 描边)、旋转星形(紫到深紫渐变 + 外光晕 + 旋转动画),底部一根滑杆统一控制进度。

涉及的核心知识点:

  • 用三角函数算五角星十个顶点
  • 星形路径做裁剪区域
  • 底色与进度填充分层
  • 渐变填充让进度有层次
  • 星形整体旋转动画
  • 外圈光晕用半透明实心圆

以下演示代码来自 qml_progress/Demo_StarBar.qml,为便于阅读,只展示了关键代码。

演示代码

FadeInAnimation {
    ColumnLayout {
        anchors.fill: parent
        anchors.marg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Quz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值