【发布时间】:2017-02-01 23:01:03
【问题描述】:
Qt QML 有一个ListModel,可以用来表示列表数据。它提供了许多将元素添加到列表的方法,但我能找到的唯一检索元素的方法是需要索引的 get() 方法。
我想检查我的 ListModel 是否包含特定元素?有没有办法使用键和值接收 ListElement 对象?
例如考虑这个列表:
ListModel {
id: fruitModel
ListElement {
name: "Apple"
cost: 2.45
}
ListElement {
name: "Orange"
cost: 3.25
}
ListElement {
name: "Banana"
cost: 1.95
}
}
是否有诸如fruitModel.get({name: "Banana"}) 之类的方法可以找到名称为“Banana”的元素并返回它们?
【问题讨论】:
-
类似的东西:
for(var i = 0; i < mylistModel.count; ++i) { if (mylistModel.get(i).name === name2search) { doSomething(mylistModel.get(i)); } }