Bienvenue sur le forum !

Si vous souhaitez rejoindre la communauté, cliquez sur l'un de ces boutons !

Qt 5 : 5.9.1 - Qt Creator : 4.3.1 - Qt Installer : 2.0.3 - JOM : 1.1.2 - Qt Build suite : 1.7.0 - VS Qt 5 : 2.0.0

connaitre la ligne sélectionné

December 2011 modifié dans Année 2011
Bonjour à tous.
Bon je veux connaitre la ligne sélectionné dans mon QTableWidget qui contient une colonne avec un QSpinBox.
Voici mon code.

connect(SpinBox[item->row()], SIGNAL(valueChanged(int)), this, SLOT(quantite(int)));
void Facture::quantite(int a)
{
QModelIndex index = table->currentIndex();
QMessageBox::information(this,"Message","La ligne sélectionné est "+ QString::number(index.row()));
}
Voici une vidéo pour mieux explique mon problème
http://www.youtube.com/watch?v=hkfmZwuc-YY

Réponses

  • Hello,
    Belle video ...
    Et la methode table->currentRow() retourne quoi dans ton exemple ?
  • Salut
    Si tu as modifié le type de sélection des éléments de ta table (sélection d'une seule ligne) c'est une seule ligne sera sélectionné à la fois par l'utilisateur.
    tu récupères les éléments de la ligne avec :

    QModelIndexList liste=tableWidget->selectionModel()->selectedIndexes();
    int numeroLigne=ui->tableWidget->selectionModel()->currentIndex().row(); // numéro de la ligne sélectionnée

  • En regardant ta vidéo, je m'aperçois que le focus arrive après l'affichage de ta fenêtre ce qui fait que la valeur de l'Index correspond à la ligne qui a le focus en cours au moment ou tu clics dans le spin box d'une autre ligne...

    Donc il te faut corriger ceci...
Connectez-vous ou Inscrivez-vous pour répondre.