QTableWidget écrire dans une autre cellule
Bonjour,
J'ai une QTableWidget tableau
Voici ce que je veux obtenir :
On saisit une donnée dans la colonne "recette".
On ouvre un fichier texte et on récupère une chaîne stockée dans QString groupe.
On affiche groupe dans une autre cellule (même ligne mais autre colonne).
Voici le code (qui fait partie d'un slot perso dont le prototype est :
Code:
void traitementSaisies(QTableWidgetItem*, QTableWidgetItem*);
Il est relié au signal :
Code:
currentItemChanged(QTableWidgetItem*, QTableWidgetItem*)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| if(fichierRecette.isOpen() == true)
{
while (!lectureFichier.atEnd())
{
recetteLue = lectureFichier.readLine();
if (recetteLue == texteAffiche)
{
groupe = lectureFichier.readLine();
nbBU = lectureFichier.readLine();
previous->setFont(QFont("Microsoft Sans Serif", 8, QFont::Bold));
QColor couleurDefault(Qt::black);
previous->setForeground(QBrush(couleurDefault));
previous->setText(recetteLue);
/***************************/
/*** ICI SE SITUE LE PROBLEME ***/
/***************************/
tableau->setCurrentCell(tableau->currentRow(), 7);
tableau->currentItem()->setText(groupe);
fichierRecette.close();
break;
}
else if (lectureFichier.atEnd())
{
QMessageBox::warning(this, "", "<strong><H3>Recette absente.\nVeuillez vérifier votre saisie.</strong></H3>");
fichierRecette.close();
previous->setFont(QFont("Microsoft Sans Serif", 12, QFont::Bold));
QColor couleurErreur (Qt::red);
QBrush brushErreur (couleurErreur);
previous->setForeground(brushErreur);
previous->setText(("Erreur"));
previous->setTextAlignment(Qt::AlignCenter);
}
}
} |
A l'exécution le programme plante.
Merci de m'aider.