一个模型,两个不同的视图 - PySide

时间:2018-01-31 19:42:47

标签: python qtableview qlistview qabstracttablemodel pyside2

我有4列的QAbstractTableModel。

我正在尝试在视图上显示前3列(QTableView),当在此类视图上选择行时,第二个视图(QListView)应显示模型的第4列。

我发现了一些关于QProxyModel的东西,但是我很难将其包裹起来。还有一个'解决方案'我找到了类似HERE的东西但不知何故我想要反向结果。

我试图显示的数据是这样的:[['green','car','available',['a','b','c','d']]] < / p>

因此,在表格视图中,它将显示:绿色 - 汽车 - 可用。 单击此行时,列表视图将在最后一个位置显示数组:a - b - c - d。

我希望这是有道理的。

关于指示,文件,示例的提示?

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

对于这种特殊情况,使用代理模型是不合适的,每次单击时应该做的是获取QModelIndexQModelIndex我们获取模型并按下行最后,我们获取了已保存的列表,我们可以将此列表作为源QStringListModel传递给我们,我们将在QListView中建立此列表。要隐藏列,我们使用hideColumn()的{​​{1}}。

QTableView