Problème avec delegue avec table QAbstractTableModel
Unsolved
French
-
Re: Problème avec le délégué QSlider
Merci de votre réponse, mais je constate que si modele est un pointeur QStandardItemModel, le delegue marche très bien. Mais si modele est un pointeur PaysTableModel (sous classe QAbstractTableModel) alors il ne fonctionne plus.
Voici le code où j'ai activé volontairement QStandardItemModel *modele = new QStandardItemModel(4,2);Merci d'avance de votre aide.
#include "essai0.h" #include "PaysTableModel.h" #include "delegue.h" #include <QApplication> #include <QStringList> #include <QTableView> #include <QHBoxLayout> int main(int argc, char *argv[]) { QApplication app(argc, argv); QMainWindow mainWindow; QWidget tableWidget; QStringList listePays; listePays << "France" << "Angleterre" << "Espagne" << "Italie" << "Allemagne"; // PaysTableModel *modele = new PaysTableModel(listePays); Delegue *mydelegate = new Delegue(); QStandardItemModel *modele = new QStandardItemModel(4,2); for(int row = 0; row < 4; ++row) { for(int col = 0; col < 2; ++col) { QModelIndex index = modele->index(row,col,QModelIndex()); modele->setData(index,0); } } QTableView *vueTable = new QTableView; vueTable->setModel(modele); vueTable->setItemDelegate(mydelegate); QHBoxLayout *layout = new QHBoxLayout; layout->addWidget(vueTable); tableWidget.setLayout(layout); mainWindow.setCentralWidget(&tableWidget); mainWindow.setWindowTitle("Exemple 3"); mainWindow.show(); return app.exec(); }