在QtQuick中,数据通过model-view(模型-视图)分离;对于每个view(视图),每个数据元素的可视化都分给一个代理(delegate);QtQuick附带了一组预定义的模型与视图,model(模型)与view(视图)都通过delegate(代理)连接起来,模型提供数据,显示在视图中的每项数据都是通过代理来实现可视化。
Repeater
import QtQuick 2.0
Column {
spacing: 2
anchors.centerIn: parent
Repeater {
model: 10
Rectangle {
width: 100
height: 20
radius: 3
color: "lightBlue"
Text {
anchors.centerIn: parent
text: index
}
}
}
}
import QtQuick 2.0
Column {
spacing: 2
Repeater {
model: ["Enterprise", "Colombia", "Challenger", "Discovery", "Endeavour", "Atlantis"]
Rectangle {
width: 132
height: 20
radius: 3
color: "lightBlue"
Text {
anchors.centerIn: parent
text: index + ":" + modelData
}
}
}
}