Comment Ajouter des Données Dynamiques à une Table QML

Je suis en train d'ajouter des lignes à une table à partir de Python. Je suis à l'aide d'une TableView décrit avec QML.

Je ne peux pas comprendre comment ajouter un modèle à la table, sauf si le modèle est également en QML. Mais je ne peux pas comprendre comment ajouter des valeurs au modèle.

import sys
from PyQt5.QtCore import QAbstractTableModel, QObject, QUrl
from PyQt5.QtQml import QQmlApplicationEngine
from PyQt5.QtQuick import QQuickView
from PyQt5.QtWidgets import QApplication



myApp = QApplication(sys.argv)

engine = QQmlApplicationEngine()
context = engine.rootContext()
context.setContextProperty("main", engine)

engine.load('users.qml')

mainWin = engine.rootObjects()[0]

# Add items
userTable = mainWin.findChild(QObject, "userTable")
tableModel = mainWin.findChild(QObject, "libraryModel")
tableModel.setData(tableModel.index(0), "one")
tableModel.setData(tableModel.index(1), "one")

mainWin.show()

sys.exit(myApp.exec_())

utilisateurs.qml

import QtQuick 2.3
import QtQuick.Controls 1.2

ApplicationWindow {
    ListModel {
        id: libraryModel
        objectName: "libraryModel"
        ListElement {
            title: "A Masterpiece"
            author: "Gabriel"
        }
        ListElement {
            title: "Brilliance"
            author: "Jens"
        }
        ListElement {
            title: "Outstanding"
            author: "Frederik"
        }
    }

    TableView {
        objectName: "userTable"
        anchors.fill: parent
        TableViewColumn {
            role: "title"
            title: "Title"
        }
        TableViewColumn {
            role: "author"
            title: "Author"
        }
        model: libraryModel
    }
}

Modifier

tableModel.append({'author': 'one', 'title': 'two'})

builtins.TypeError: unable to convert argument 0 of 

QAbstractListModel.append from 'dict' to 'QQmlV4Function*'
Pourquoi n'êtes-vous pas à l'aide de la méthode append de la ListModel Type? (doc.qt.io/qt-5/qml-qtqml-modèles-listmodel.html#ajout de la méthode)
Voir la modifier
"Je ne peux pas comprendre comment ajouter un modèle à la table, sauf si le modèle est également en QML. Mais je ne peux pas comprendre comment ajouter des valeurs pour le modèle." Désolé, quoi? Quel est le type de modèle, où voulez-vous de les définir, et à partir de quel côté voulez-vous de les manipuler?

OriginalL'auteur Siecje | 2016-03-18