首先,我要提前感谢您的回答。我在一个 QStandardItemModel 中插入一个 QStandardItem,然后在树视图 (A) 中显示此模型。在此之后,我将相同的项目(指针)附加到一个新的 QStandardItemModel,它与另一个树视图(B)相关联。在第二种情况下,它只显示一个空项目,而不是一个具有相同文本的项目。如果我复制该项目,结果是预期的。为什么我不能在两个不同的模型中附加相同的项目?
在这种情况下,使用 QSortFilterProxyModel 是没有用的,因为 modelA 和 modelB 具有相同的数据但遵循非常不同的结构。
非常感谢。
如果无法做到这一点,您建议我使用哪种解决方案?我虽然通过使用哈希表来维护表模型之间的对应关系,但我认为有一个更简单的解决方案。
我复制一个代码示例。
QStandardItem * item = generateExampleItem();
modelA->invisibleRootItem()->appendRow(item); // will be visible to the user
modelB->invisibleRootItem()->appendRow(item); // will be invisible to the user
ui.treeViewA->setModel(modelA);
ui.treeViewB->setModel(modelB);
ui.treeViewA->show();
ui.treeViewB->show();