Bonsoir.
Mon souci ce soir est un souci populaire mais dont les reponses proposées ne s'appliquent pas à mon cas. En tout cas j'y arrive pas. J'ai un QTableView, alimenté par un QSqlTableModel, et je veux que certaines cellules aient un fond de couleur suivant ceertaines conditions. On m'a demandé de ré-implémenter la methode data() et je l'ai fait. Sauf que ca ne marche pas. voicil'implementation de la methode data(), suivi d'une capture d'ecran de mon tableau. Svp aidez moi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 QVariant Paiement::data(const QModelIndex &index, int role) const { int row = index.row(); int col = index.column(); switch(index.column()){ case 4: //Column 4 switch(role){ case Qt::DisplayRole: return QBrush(Qt::green); case Qt::BackgroundRole: if(m_modele->data(m_modele->index(1, 3)) > 20000) return QBrush(Qt::red); case Qt::ForegroundRole: if(m_modele->data(m_modele->index(1, 3)) > 20000) return QColor(Qt::black); } } return QVariant(); }![]()
Partager