在我的 QTableView 中,我试图拥有第一列复选框,但我得到的所有行列都填充有复选框,并且默认情况下所有这些列都被选中。我也无法更改复选框的状态。
class MyTableModel(QtCore.QAbstractTableModel):
def __init__(self, listData=[[]], headers=[], parent=None):
super(MyTableModel, self).__init__(parent)
self.__listData = listData
self.__headers = headers
def data(self, index, role):
row = index.row()
column = index.column()
value = self.__listData[row][column]
if role == QtCore.Qt.CheckStateRole:
if self.__listData[row] == 0:
return QtCore.QVariant(QtCore.Qt.Unchecked)
else:
return QtCore.QVariant(QtCore.Qt.Checked)
if role == QtCore.Qt.EditRole:
return value
if role == QtCore.Qt.DisplayRole:
return value