Problème Méthode data()



  • Bonjour,

    Comment fait on par un clic sur un bouton, pour exécuter cette méthode.
    Pour l'instant c'est sans résultats.
    Voici le code:

    #include "widget.h"
    #include "mymodel.h"
    #include "ui_widget.h"
     
    Widget::Widget(QWidget *parent) :
        QWidget(parent),
        ui(new Ui::Widget)
    {
        ui->setupUi(this);
     
        QString file = "C:\\DIVERS\\bd1.accdb";
               QSqlDatabase mDatabase;
               mDatabase = QSqlDatabase::addDatabase("QODBC");
               QString dataBaseString = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};FIL={MS Access};DBQ=" + file;
               mDatabase.setDatabaseName(dataBaseString);
     
               mDatabase.open();
     
                mModele = new QSqlTableModel(this);
               mRequete = new QSqlQuery();
                   mRequete->prepare("SELECT Numero, Nom FROM Compte WHERE Numero > 10 and Numero < 25");
    mRequete->exec();
    mModele->setQuery(*mRequete);   
     
    ui->tableView->setModel(mModele);
     
                   ui->tableView->show();
    }
     
    Widget::~Widget()
    {
        delete ui;           
       
     
    void Widget::on_pushButton_clicked()
    {
         QModelIndex idx;
        idx = mModele->index(1,1,QModelIndex());
     
        mModele->data(idx,Qt::BackgroundRole);
     
        ui->tableView->setModel(mModele);
     
                       ui->tableView->show();
    }
    
    
    
    
    
      mymodel::mymodel(QObject *parent): QSqlTableModel(parent)
    {
    }
    
    QVariant mymodel::data ( const QModelIndex & index, int role)const
       {
    

    [koahnig:code tags adjusted]



  • @lacombe

    Lors de la publication en français, veuillez poster directement sur https://forum.qt.io/category/57/french.


  • Lifetime Qt Champion

    Bonjour,

    La fonction on_pushButton_clicked ne fait rien de visible. Vous appelez data puis vous remettez exactement le même model sur ui->tableView. Donc grosso-modo, il ne se pass rien.

    Ne devriez vous pas appelez setData en passant la couleur voulue ?


Log in to reply