ListView 有 20 項,滑鼠點擊獲得第十項 X pos。
但是 positionViewAtIndex 函式也會移動專案。
有沒有辦法在沒有 positionViewAtIndex 的情況下獲得 Item X pos?
這是樣本。
Window {
id: frame
width: 640
height: 480
visible: true
MouseArea{
anchors.fill: parent
onClicked: {
listView.positionViewAtIndex(10, ListView.SnapPosition);
var destPos = listView.contentX;
console.log("item10 x: " destPos)
}
}
Rectangle {
width: 480
height: 80
color: "white"
ListView {
id:listView
anchors.fill: parent
anchors.margins: 20
clip: true
model: 20
orientation: ListView.Horizontal
delegate:
Rectangle {
width: 40
height: 40
color: "green"
Text {
anchors.centerIn: parent
text: index
}
}
spacing: 5
}
}
}
uj5u.com熱心網友回復:
使用獲取位置的方式,但如果想要中心位置,則需要更多計算。
MouseArea{
anchors.fill: parent
onClicked: {
var destPos = listView.itemAtIndex(10).x
console.log("item10 x: " destPos)
listView.contentX = destPos
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/487713.html
上一篇:Qstring中的雙引號問題
