我有2个qml tableviews。当我点击第一个时,我从所选行中获取一个id然后我根据该ID过滤第二个表。 在qml中,我这样做(伪代码):
TableView {
.....
onclick: {
var id = table1model.getid(currentIndex)
table2.model.clear
for(index in sourceModel) {
if (condition()) {
table2.model.append(index)
}//end if
}//end for
}//end onclick
}//end table1
TableView {
id: table2
....
}
即使某些项目已添加到模型中,问题也无法显示在table2中。我可以将模型中的索引附加到另一个模型中(它们具有相同的结构,实际上table2模型是在上下文中注册的sourceModel的子集)吗?
答案 0 :(得分:0)
您应该追加模型项,而不仅仅是索引。索引只是一个数字。
var obj = table1.model.get(index);
table2.model.append(obj);
前提是两个表都使用相同的结构。
但要获得详细的答案,你必须提供mcve,因为@derM已经注意到了。