QtQuick 2.0 (Qt 5) で ListModel を動的に埋めることにより、GridView を設定しようとしています。動作しますが、アプリケーションの起動が非常に遅くなります:
アプリケーション ウィンドウはすぐに表示されますが、水色の背景が表示されるまでに約 2 秒かかります。それまでは、デフォルトの灰色の背景が表示されます。
以下にコメントされている 2 行のコメントを外すと、アプリはすぐに起動します。しかし、なぜ機能するのか理解できないので、このハックは好きではありません。
誰が何が間違っているのか考えていますか?
ありがとう!
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
}
}