Comment QSignalMapper travail?

Après mon post ici : Associé de signaux et de slots pour une qcheckbox créer dynamiquement je dois associer :

• Le signal clicked() lorsque je clique sur un qCheckBox à ma fonction cliqueCheckBox(QTableWidget *monTab, int ligne, QCheckBox *pCheckBox)

Pour ce faire, je dois utiliser QSignalMapper, après deux heures d'essayer de comprendre comment il fonctionne, je ne peux pas avoir un bon résultat, voici le code que je fais, ce qui est évidemment faux :

 QSignalMapper *m_sigmapper = new QSignalMapper(this);
 QObject::connect(pCheckBox, SIGNAL(mapped(QTableWidget*,int, QCheckBox*)), pCheckBox, SIGNAL(clicked()));
 QObject::connect(this, SIGNAL(clicked()), this, SLOT(cliqueCheckBox(QTableWidget *monTab, int ligne, QCheckBox *pCheckBox)));

 m_sigmapper->setMapping(pCheckBox, (monTab,ligne, pCheckBox));
 QObject::connect(m_sigmapper, SIGNAL(clicked()),this, SLOT(cliqueCheckBox(QTableWidget *monTab, int ligne, QCheckBox *pCheckBox)));

Pouvez-vous m'expliquer, comment QSignalMapper œuvres ? Je ne comprends pas vraiment ce à associer avec 🙁

pourquoi devez-vous utiliser QSignalMapper? une raison en particulier? cela peut être fait facilement avec une connexion directe
Eh bien, dans l'autre post, ils m'expliquent qu'un signal peut pas se connecter à une machine à sous avec plus de paramètre, et le signal clicked() n'ont pas de paramètres. Aussi j'ai besoin de ces 3 paramètres.
vrai, la fente peut être autant ou moins le nombre de paramètres que le signal correspondant. mais vous pouvez écrire un logement qui ne prend aucun paramètre, puis d'appeler le sous réelle, de méthode, de ce avec le paramètre requis.
Oui mais comment je peux lui passer les 3 paramètres : QTableWidget *monTab, int ligne, QCheckBox *pCheckBox ? Si vous avez lu l'autre post, vous aurais-je des centaines de qCheckBox, donc je ne peux pas utiliser des pointeurs.
Pour comprendre comment QSignalMapper fonctionne, voici un bonne pour vous de commencer avec.

OriginalL'auteur Evans Belloeil | 2014-06-17