QML 中有范围滑块吗?

Is there a Range Slider in QML?

我正在寻找 QML 中的范围滑块。目标是 select 介于最大值和最小值之间。

例子

假设我想创建一个在线商店。按价格搜索产品。我们有 50 欧元到 5000 欧元的库存产品。客户只想获得 500 欧元到 1000 欧元之间产品的结果。所以我需要这个范围滑块

RangeSlider {
    id: priceSlider
    min: 50
    value1: 500
    value2: 1000
    max: 5000
} 

是否有可用的解决方案?

RangeSlider 在 Qt 5.6 的 Qt.labs.controls 1.0 导入下添加,Qt 5.7 在 QtQuick.Controls 2.0 导入下添加。这是文档中的示例:

RangeSlider {
    from: 1
    to: 100
    first.value: 25
    second.value: 75
}


旧答案

不,没有。不过,这听起来像是一个有用的控件,所以我建议将其添加到新的 Qt Quick Controls 中:

https://bugreports.qt.io/browse/QTBUG-48667

在qt5.6及以上有tofrom相当于你的minmax

import QtQuick 2.0
import Qt.labs.controls 1.0
RangeSlider
{
    id:range_slider

    from:min
    to:max
    stepSize: 5
}

Qt 5.7 开始,现在有 QtQuick Controls 2 which includes RangeSlider.

您的代码可以实现为:

import QtQuick 2.7
import QtQuick.Controls 2.0 // or higher for newer features

RangeSlider {
    id: priceSlider
    from: 50
    first.value: 500
    second.value: 1000
    to: 5000
}