QComboBox connecter

J'ai besoin d'appeler une fonction avec currentIndex+1 lors de la currentIndex d'un QComboBox changements. J'ai du mal avec la syntaxe de ce matin:

//call function readTables(int) when currentIndex changes.

connect(ui->deviceBox, SIGNAL(currentIndexChanged()),
   SLOT( readTables( ui->deviceBox->currentIndex()+1) );

erreur: attendu")'
FENTE( readTables(ui->deviceBox->currentIndex()+1) );

L'ajout d'une clôture ) ne fonctionne pas...!

  • L'écrire comme connect(ui->deviceBox, SIGNAL(currentIndexChanged(int)), SLOT(readTables(int));. Le readTables(int) fente va être appelé avec l'index actuel comme un argument.
  • Si vous allez utiliser Qt version 5+ et c++11, alors vous pouvez écrire connect(ui->deviceBox, SIGNAL(currentIndexChanged(int)), [this]( int idx ) { readTables( idx + 1 ); } );
  • Je vous recommande de lire le Qt Signals and Slots de la documentation: qt-project.org/doc/qt-4.8/signalsandslots.html
InformationsquelleAutor Jocala | 2015-01-21