PyQt5和QAbstractListModel :: columnCount

时间:2016-01-31 15:45:26

标签: python qt pyqt pyqt5 qabstractlistmodel

QTreeView忽略继承自QAbstractListModel的类的columnCount()并仅显示第一列:

import sys
from PyQt5.QtCore import QAbstractListModel
from PyQt5.QtWidgets import QApplication, QTreeView

class Model(QAbstractListModel):
    def columnCount(self, parent):
        return 3

    def data(self, index, role):
        return None

    def rowCount(self, parent):
        return 0

app = QApplication(sys.argv)

model = Model()
list_view = QTreeView()
list_view.setModel(model)
list_view.show()

app.exec_()

相关的C ++代码工作正常。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

来自Qt docs:

  

QAbstractListModel   class提供了一个可以创建子类的抽象模型   一维列表模型。 [强调补充]

但你显然想要一个二维模型,所以请改用QAbstractItemModel