Vue non compatible avec le code du modèle associé
Bonjour,
Je me trouve bloqué dans la réalisation d'un exemple de Model/View Qt. En faite, j'utilise qt Creator et j'ai "dessiné" un tree view, une liste view et un tableView.
J'ai associé ces vues à un modèle (dans le constructeur de la MainWindow)
Code:
1 2 3 4
|
ui->listView->setModel(creerModele(this));
ui->treeView->setModel(creerModele(this));
ui->tableView->setModel(creerModele(this)); |
Ceci est le code de la méthode creerModele
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
QAbstractItemModel* MainWindow::creerModele(QObject *parent)
{
QStringListModel* stringModel = new QStringListModel();
stringModel->setHeaderData(0,Qt::Horizontal, QObject::tr("Pays"),Qt::DisplayRole);
stringModel->setHeaderData(1,Qt::Horizontal, QObject::tr("Ville"),Qt::DisplayRole);
stringModel->setHeaderData(2,Qt::Horizontal, QObject::tr("Sport"),Qt::DisplayRole);
AjouterItem(stringModel, "France","Toulouse","Rugby");
return stringModel;
} |
Ceci est le code de la méthode AjouterItem
Code:
1 2 3 4 5 6 7 8 9
|
void MainWindow::AjouterItem(QAbstractItemModel* i_model, const QString& i_sPays,const QString& i_sVille
,const QString& i_sSport)
{
i_model->insertRow(0);
i_model->setData(i_model->index(0,0),i_sPays);
i_model->setData(i_model->index(0,1),i_sVille);
i_model->setData(i_model->index(0,2),i_sSport);
} |
Le problème: lors de l'exécution de l'application, la mainWindows Affiche seulement, dans la treeview et la table view, l'item "France" sans aucune autre indication (Dans la table view il y a une seule colonne intitulée 1).
Je vous serais très reconnaissant si vous m'aidez à trouver une solution.
Merci