目前我正在通過PyQT與QT框架合作。我創建了一個自定義對象(從QObject繼承),並可以按照預期從QML使用它。我還在QML中創建了一個委託,該委託負責此對象的可視化表示,並且也按預期工作。如何在QML中使用ListView和自定義對象?
但是,現在我想在ListView中再次顯示這些對象中的幾個對象(在委託中定義的表示)(再次在QML中)。我似乎無法弄清楚這是怎麼可能的,所以有人能給我一些指示?
提前感謝您的時間。
編輯:爲了迴應一些反應,我會試着澄清我想通過一個例子來實現更多一點。在這裏,我們有一個矩形(這只是爲了清晰起見,通常這將是我的自定義對象),它具有一個自定義屬性(customText)和一個簡單定義佈局的委託,兩者都可以工作。
ListView {
height: 1000
model: Rectangle {
property string customText: "1.jpg"
}
delegate: Rectangle {
width: 200
height: 200
Text {
anchors.fill: parent
text: model.customText
}
}
}
不過,現在我基本上不想一個矩形(這不會使一個ListView有很大的意義),但有幾個人在例如列表。我會想到的是,我將不得不改變模式,這樣的事情,但後來我得到「不能指定多個值,以奇異特性」:
model: [Rectangle {
property string customText: "1.jpg"
},
Rectangle {
property string customText: "1.jpg"
},
Rectangle {
property string customText: "1.jpg"
}]
請讓我知道如果您需要任何進一步信息。
你試過了什麼? – GrecKo
爲什麼不在這裏發佈與該問題相關的所有代碼而不是_explaining_呢? – folibis
其中一種方法是從'QAbstractListModel'繼承並定義一個模型,該模型提供這些對象中的每一個的屬性。 – Velkan