我正在尝试通过在 QtQuick 2.0 (Qt 5) 中动态填充 ListModel 来填充 GridView。它可以工作,但应用程序启动非常缓慢:
应用程序窗口会立即出现,但浅蓝色背景大约需要 2 秒才能出现。在那之前,我会看到默认的灰色背景。
如果我取消注释下面注释的两行,应用程序会立即启动。但我不喜欢这种 hack,因为我不明白它为什么会起作用。
有谁知道可能出了什么问题?
谢谢!
import QtQuick 2.0
Rectangle {
width: 1024; height: 600
color: "lightblue"
Component.onCompleted: {
//moviesModel.clear()
moviesModel.append({ "movieNumber": 1 })
}
ListModel {
id: moviesModel
//ListElement { movieNumber: 0 }
}
Component {
id: moviesComponent
Rectangle {
width: grid.cellWidth
height: grid.cellHeight
Text {
anchors.centerIn: parent
text: movieNumber
}
}
}
GridView {
id: grid
anchors.fill: parent
cellWidth: 100
cellHeight: 200
model: moviesModel
delegate: moviesComponent
}
}