【发布时间】:2017-09-16 18:32:26
【问题描述】:
我怎样才能为不止一个 QTableWidget(不仅仅是 self.general_table)重写下面的代码? 我不想为每个表都放相同的代码。
class QTableWidgetEnDisabledItem(QtGui.QItemDelegate):
"""
Create a readOnly/editable QTableWidgetItem
"""
def __init__(self, parent, state):
self.state = state
QtGui.QItemDelegate.__init__(self, parent)
def createEditor(self, parent, option, index):
item = QtGui.QLineEdit(parent)
if self.state == "disabled":
item.setReadOnly(True)
elif self.state == "enabled":
item.setEnabled(True)
return item
QTableWidgetEnDisabledItem类的执行
self.Size = QTableWidgetEnDisabledItem(self.general_table, "enabled")
self.general_table.setItemDelegateForRow(index.row(),self.Size)
【问题讨论】:
-
“我不想每张桌子都放同样的代码”是什么意思?
-
例如:
self.Size = QTableWidgetEnDisabledItem(self.general_table, "enabled") self.general_table.setItemDelegateForRow(index.row(),self.Size) self.Size = QTableWidgetEnDisabledItem(self.layers_table, "enabled") self.layers_table.setItemDelegateForRow(index.row(),self.Size)
标签: python pyqt pyqt4 qtablewidget qtablewidgetitem