在pyside2 qsqltablemodel类继承中从qabstractitemmodel中定义的setHeaderData在哪里?

2024-10-03 11:20:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图理解setHeaderData虚拟方法在qSqlTableModel类中的定义位置。我通过其他类跟踪了继承链,但没有看到提到它

当我将类MyClass(QSqlTableModel):替换为类MyClass(QAbstractTableModel):时,除了我没有得到列标题,只有数字之外,一切都正常;我也没有收到关于未定义虚拟函数的错误。 标题代码与QSqlTableModel一起工作,只是似乎对QAbstractTableModel没有任何作用。它必须在QSqlTableModel中的某个地方定义才能工作。如果我“知道”SetHeaderData做了什么,我可以尝试实现它,但我没有找到任何代码示例,只是提到了它

def set_header_data(self):
    """
    from __init__, load the headers into the model
    """
    for headix, head in enumerate(self._head):
        self.setHeaderData(headix, Qt.Horizontal, head, role=Qt.EditRole)

PySide2 5.15.2 Python 3.9.1


Tags: the方法代码self标题定义myclass数字