我想實現一個使用QtQuick.Controls Slider
其中只有handle
是可以點擊的,可以用來拖handle
。如果你點擊groove
,什麼都不應該發生,handle
應該保持它的位置。我怎樣才能限制Slider
的mouseArea
到只有handle
?如何將QML滑塊的mouseArea限制爲僅限手柄?
在下面的例子中,Slider
是可點擊的整個Slider
width
和height
:
import QtQuick 2.4
import QtQuick.Window 2.2
import QtQuick.Controls 1.3
import QtQuick.Controls.Styles 1.3
Window {
id: mainItem
width: 800
height: 400
visible: true
Slider{
id: autoSlider
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
maximumValue: 1.0
value: 0
updateValueWhileDragging : false
style: SliderStyle {
groove: Rectangle {
implicitWidth: 350
implicitHeight: 8
color: "gray"
radius: 8
}
handle: Rectangle {
anchors.centerIn: parent
color: control.pressed ? "white" : "lightgray"
border.color: "gray"
border.width: 2
implicitWidth: 45
implicitHeight: 45
radius: 12
}
}
}
}
我想到了在 「.. \ QML \ QtQuick \控制」 文件夾改變Slider.qml
模板,但我真的不知道該怎麼做。
我所有的搜索努力白費。任何幫助將不勝感激。
謝謝你的回答@Mitch。它還沒有按照我的要求工作,但它是正確的方向。直到下週三才能開始工作。當時會報告。 – Simon
抱歉,我花了很長時間才找回來。再次感謝您的回答! 相反,我們與輸入完全不同的手段去滑的,所以我沒有對我仍然有問題的工作。 – Simon