comment fabriquer une cellule dans un QTableWidget en lecture seule?

j'ai le code suivant la définition de l'interface de mon application

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)

et le code suivant dans mon application

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)

Je veux être en mesure d'ajouter de nouvelles lignes et de colonnes et de les éditer mais je veux verrouiller certaines cellules. ( j'ai déjà le code pour accroître la table )
comment puis-je faire quelques cellules en lecture seule, tout en conservant les autres en lecture et en écriture?
j'ai trouvé ce lien Comment faire une colonne dans QTableWidget en lecture seule? avec une solution pour le problème en C++, python solution similaire ?

EDIT: suppression de la réponse de la poste et collé comme une réponse

Il y a généralement très peu de différences entre le c++ et le python code avec Qt. Vous avez juste à ajuster la syntaxe et ce morceau de code fonctionne comme un charme.
vraiment fait un travail comme un charme :), j'ai juste besoin de trouver l'endroit où ont été déclarées, les drapeaux, les im python et qt, il faut un certain temps pour s'y habituer

OriginalL'auteur Rafael Rotelok | 2011-10-11