Qt qml中如何根据滑块值的变化在QSlider上添加标记
How to add markers on QSlider according to slider value changes in Qt qml
在我的应用程序中,我使用的是 1 到 100 范围内的 QSlider。我正在使用滑块手柄更改滑块值。我想在更改值后滑块手柄所在的位置绘制标记或勾选。更改值时如何在滑块上绘制标记
Slider {
id: maultipleSlider
value: 0
from: 100
to: 0
rotation: 90 // <--- rotation
x: 50;
y: 200 // x & y position
ToolTip {
parent: maultipleSlider.handle
visible: maultipleSlider.pressed
text: maultipleSlider.value.toFixed(2)
}
onValueChanged:
{
console.log("Slider value ", maultipleSlider.value)
}
background: Rectangle {
x: maultipleSlider.leftPadding
y: maultipleSlider.topPadding + maultipleSlider.availableHeight / 2 - height / 2
implicitWidth: 400
implicitHeight: 6
width: maultipleSlider.availableWidth
height: implicitHeight
radius: 5
color: "#48B0E5"
border.color: "white"
Rectangle {
width: maultipleSlider.visualPosition * parent.width
height: parent.height
color: "#bdbebf"
radius: 2
}
}
}
使用slider->setTickInterval(int)
或者如果你是在Qt Designer中,在属性编辑器window下,QSlider
下面有一个tickInterval
属性可以设置.还有另一个字段 tickPosition
将在所选位置显示您的刻度线。
在我的应用程序中,我使用的是 1 到 100 范围内的 QSlider。我正在使用滑块手柄更改滑块值。我想在更改值后滑块手柄所在的位置绘制标记或勾选。更改值时如何在滑块上绘制标记
Slider {
id: maultipleSlider
value: 0
from: 100
to: 0
rotation: 90 // <--- rotation
x: 50;
y: 200 // x & y position
ToolTip {
parent: maultipleSlider.handle
visible: maultipleSlider.pressed
text: maultipleSlider.value.toFixed(2)
}
onValueChanged:
{
console.log("Slider value ", maultipleSlider.value)
}
background: Rectangle {
x: maultipleSlider.leftPadding
y: maultipleSlider.topPadding + maultipleSlider.availableHeight / 2 - height / 2
implicitWidth: 400
implicitHeight: 6
width: maultipleSlider.availableWidth
height: implicitHeight
radius: 5
color: "#48B0E5"
border.color: "white"
Rectangle {
width: maultipleSlider.visualPosition * parent.width
height: parent.height
color: "#bdbebf"
radius: 2
}
}
}
使用slider->setTickInterval(int)
或者如果你是在Qt Designer中,在属性编辑器window下,QSlider
下面有一个tickInterval
属性可以设置.还有另一个字段 tickPosition
将在所选位置显示您的刻度线。