как сделать ячейку в QTableWidget только для чтения?

у меня есть следующий код, определяющий графический интерфейс моего приложения

class Ui (object):
    def setupUi():
        self.tableName = QtGui.QTableWidget(self.layoutWidget_20)
        self.tableName.setObjectName(_fromUtf8("twHistoricoDisciplinas"))
        self.tableName.setColumnCount(4)
        self.tableName.setRowCount(3)

, и следующий код в моем приложении

class MainWindow(QtGui.QMainWindow):
    def __init__(self):
        self.ui = Ui()
        self.ui.setupUi(self)
        self.createtable()

    #creating a tw cell
    def cell(self,var=""):
            item = QtGui.QTableWidgetItem()
            item.setText(var)
            return item

    def createtable(self):
         rows = self.tableName.rowCount()
         columns = self.tableName.columnCount()
         for i in range(rows):
             for j in range(columns):
                 item = self.cell("text")
                 self.ui.tableName.setItem(i, j, item)

Я хочу иметь возможность добавлять новые строки и столбцы и редактировать их, но я хочу заблокировать некоторые из ячеек. (у меня уже есть код, расширяющий таблицу) как я могу сделать некоторые ячейки доступными только для чтения, а другие оставить для чтения и записи? я нашел эту ссылку Как сделать столбец в QTableWidget только для чтения? с решением проблемы на C ++, похоже ли решение на Python?

РЕДАКТИРОВАТЬ: Удален ответ из сообщения и вставлен как ответ

7
задан Community 23 May 2017 в 12:17
поделиться