没有找到直接设置列不可编辑的方法,这里用设置单元格不可编辑的方法替代
def set_table_unedit(self):
'''
此方法用于设置表格第一列第二列不可编辑
'''
for i in range (self.tableWidget.rowCount()):
item0=self.tableWidget.item(i,0)
if item0==None:
item0=QtWidgets.QTableWidgetItem()
self.tableWidget.setItem(i,0,item0)
item1=self.tableWidget.item(i,1)
if item1==None:
item1=QtWidgets.QTableWidgetItem()
self.tableWidget.setItem(i,1,item1)
item0.setFlags(QtCore.Qt.ItemFlag(0))
item0.setFlags(QtCore.Qt.ItemIsEnabled)
item1.setFlags(QtCore.Qt.ItemFlag(0))
item1.setFlags(QtCore.Qt.ItemIsEnabled)
这个方法,需要在每次修改单元格属性后调用一下,否则一修改后(比如用了setText()),就会变成可编辑了。