【发布时间】:2021-05-26 12:12:40
【问题描述】:
我一直在玩this 代码,但我不明白如何调整模型列的可见性。
for i in range(3):
parent1 = QStandardItem('Family {}. Some long status text for sp'.format(i))
for j in range(3):
child1 = QStandardItem('Child {}'.format(i*3+j))
child2 = QStandardItem('row: {}, col: {}'.format(i, j+1))
child3 = QStandardItem('row: {}, col: {}'.format(i, j+2))
parent1.appendRow([child1, child2, child3])
model.appendRow(parent1)
# span container columns
view.setFirstColumnSpanned(i, view.rootIndex(), True)
我想要一个模型有很多字段和几个视图,每个视图只显示特定的列。
我不想用setColumnHidden 隐藏列,因为当模型扩展时,我将不得不隐藏新列。
我熟悉 Gtk,它很简单:创建一个 TreeView,手动添加列,用渲染器填充它们并告诉每个渲染器,它应该从模型中的哪一列获取数据。 Qt可以吗?
【问题讨论】:
-
您可以使用 QSortFilterProxyModel 过滤您想要隐藏的数据
-
@Fabio 谢谢。我必须继承
QSortFilterProxyModel并调用filterAcceptsColumn还是我错过了什么?