• QML自定义电池状进度条


    效果:
    在这里插入图片描述
    百分比显示保留两位小数,通过iValue的数值来显示当前进度,注意为了保留小数总值取的是10000,所以你的iValue值也要乘上100

    变量说明:
    cBorderColor:进度条外框的颜色
    cContentColor:表示进度的小方块颜色
    cTextColor:显示进度百分比的文字颜色
    iValue:当前进度,为整数(记得放大100倍)
    iModel:表示进度小方块的数量,该控件的长度与此有关,无需再次设置

    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.2
    import QtGraphicalEffects 1.0
    import QtQuick.Layouts 1.3
    
    Rectangle{
        property color cBorderColor: "gray"
        property color cContentColor: "#00cc00"
        property color cTextColor: "black"
        property int iModel: 20
        readonly property int iEndValue: 10000
        readonly property int iStartValue: 0
        property int iValue: 657
        width: iModel * 12 + 4
        height: 33
        color: "transparent"
        Rectangle{
            id:background
            color: "transparent"
            width: iModel * 12 + 4
            height: 20
            border.color: cBorderColor
            Repeater{
                model:iModel
                Rectangle{
                    visible: (index / iModel) < (iValue / iEndValue)
                    x: 2 + index * (width + 2)
                    y: 2
                    width: 10
                    height: background.height - 2 * y
                    color: cContentColor
                }
            }
            Text{
                anchors.top:parent.bottom
                anchors.topMargin: 2
                anchors.left: parent.left
                anchors.right: parent.right
                text:(iValue / iEndValue * 100).toFixed(2) + "%"
                height:10
                horizontalAlignment: Text.AlignHCenter
                color: cTextColor
                font.pixelSize: 12
                font.bold: true
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
  • 相关阅读:
    Docker核心组件
    C# 13(.Net 9) 中的新特性 - 扩展类型
    Java 集合之 List
    Leetcode1-两数之和详解
    Linux设备树详解
    Linux常用锁
    纯前端实现 导入 与 导出 Excel
    JSON schema(模式)
    CEPH-3:cephfs功能详解
    入门 Activiti 工作流,通俗易懂
  • 原文地址:https://blog.csdn.net/qq_40950183/article/details/134022004