【Qt QML】ComboBox组件

发布于:2024-05-08 ⋅ 阅读:(19) ⋅ 点赞:(0)

ComboBox 是一个组合的按钮和弹出列表。它提供了一种以最小的屏幕空间呈现选项列表给用户的方式。ComboBox 使用数据模型填充。数据模型通常是一个 JavaScript 数组、一个 ListModel 或一个整数,但也支持其他类型的数据模型。
下面是一个简单的使用方式。
请添加图片描述

import QtQuick
import QtQuick.Controls

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    QtObject {
        id: backend
        property real txtScaler : 100
    }

    ListModel {
        id: scaleModel
        ListElement {
            scalePercent: "100%"
            scaleNumber: 100
        }
        ListElement {
            scalePercent: "90%"
            scaleNumber: 90
        }
        ListElement {
            scalePercent: "80%"
            scaleNumber: 80
        }
        ListElement {
            scalePercent: "70%"
            scaleNumber: 70
        }
        ListElement {
            scalePercent: "60%"
            scaleNumber: 60
        }
        ListElement {
            scalePercent: "50%"
            scaleNumber: 50
        }
        ListElement {
            scalePercent: "40%"
            scaleNumber: 40
        }
        ListElement {
            scalePercent: "30%"
            scaleNumber: 30
        }
        ListElement {
            scalePercent: "20%"
            scaleNumber: 20
        }
        ListElement {
            scalePercent: "10%"
            scaleNumber: 10
        }
    }

    ComboBox {
        anchors.centerIn: parent
        textRole: "scalePercent"
        valueRole: "scaleNumber"
        model: scaleModel
        onActivated: backend.txtScaler = currentValue
        Component.onCompleted: currentIndex = indexOfValue(backend.txtScaler)
    }
}


网站公告

今日签到

点亮在社区的每一天
去签到