QTableWidget表格部件中的QTableWidgetItem项可以单独设置复选状态,如图所有项都设置了复选状态,每行的复选状态不同:
项的复选状态可以通过checkState()来获取,如果要改变项的复选状态可以调用setCheckState(Qt.CheckState state)来实施。
示例代码:
for row in range(3):
for col in range(3):
item = myTableItem(f"({row},{col})")
self.tableWidget.setItem(row,col,item)
item.setData(QtCore.Qt.DisplayRole,item.data(QtCore.Qt.DisplayRole))
item.setData(QtCore.Qt.DecorationRole,QtGui.QIcon('.\icon\'+str(row+1)+'.gif'))#设置图标
item.setCheckState(row%3) #设置复选状态
item.setData(QtCore.Qt.TextAlignmentRole,col % 3) #设置文本对齐方式
注意:
- 复选状态的取值及含义请参考《PyQt(Python+Qt)学习随笔:复选框状态枚举类Qt.CheckState取值及含义》,注意如果没有设置允许复选,checkState返回值与未选中相同