我有一个页面,我想将文本按图像分开放在可滚动列表中以测试 Qt,但如果我想这样做,我必须硬定义每个图像和文本的 Y,但我不知道如何获得它通过一个很好的方法来获得确切的 YI 必须分配。此外,我的 ScrollView 不起作用(我无法垂直滚动)。
这页纸:
import QtQuick 2.15
import QtQuick.Controls 2.15
Page {
id: page
width: window.width
height: window.height
title: qsTr("Text & Images")
ScrollView {
width: parent.width
height: parent.height
ListView {
Image {
source: "/images/test1.png"
anchors.horizontalCenter: parent.horizontalCenter
height: Image.height
}
Repeater {
model: 5
Label {
text: qsTr(txts["text" + (index + 1)])
anchors.horizontalCenter: parent.horizontalCenter
y: index * 400
}
Image {
source: "/images/test" + (index + 2) + ".png"
anchors.horizontalCenter: parent.horizontalCenter
y: index * 400 + 200
fillMode: Image.PreserveAspectFit
}
}
}
}
}
如果我不设置 Y,所有图像都显示在 y:0 中。
有谁知道像其他语言一样自动执行此操作的组件?
编辑:我可以动态显示图像和文本,但滚动条不起作用并弄乱了所有 ColumnLayout。
我尝试将其调整到我的代码中。
ColumnLayout {
anchors.fill: parent
ListView {
flickableDirection: Flickable.VerticalFlick
boundsBehavior: Flickable.StopAtBounds
Layout.fillWidth: true
Layout.fillHeight: true
ScrollBar.vertical: ScrollBar {}
Image {
source: "/images/test1.png"
}
Repeater {
model: 5
Label {
text: qsTr(txts["text" + (index + 1)])
}
Image {
source: "/images/test" + (index + 2) + ".png"
}
}
}
}