PyQt5 QTableWidget: сделать последний столбец редактируемым - PullRequest
1 голос
/ 23 апреля 2020

Как получить доступ к последнему столбцу QTableWidget? Я хочу установить его для редактирования, используя что-то вроде этого:

item = QtWidgets.QTableWidgetItem(stuff)
item.setFlags(QtCore.Qt.ItemIsEnabled) #make everything editable
self.qtable_widget.setItem(row, column, item)

1 Ответ

1 голос
/ 23 апреля 2020

Чтобы изменить возможность редактирования групп элементов, лучше использовать делегата, как показано в этом решении , этот вопрос немного отличается, поэтому я изменил свое решение:

class ReadOnlyDelegate(QtWidgets.QStyledItemDelegate):
    def createEditor(self, parent, option, index):
        # last column
        if index.column() == (index.model().columnCount() - 1):
            return super().createEditor(parent, option, index)
delegate = ReadOnlyDelegate(self.qtable_widget)
self.qtable_widget.setItemDelegate(delegate)
...