J'écris une calculatrice simplifiée en utilisant Qt avec C++, à des fins d'apprentissage. Chaque nombre est un QPushButton qui utilise le même emplacement pour modifier le texte d'un widget lineEdit utilisé comme affichage.Moins de connexions dans une calculatrice Qt
L'emplacement utilise la méthode expéditeur() pour déterminer quel bouton a été enfoncé, afin que le nombre correct soit écrit sur le widget d'affichage.
Afin d'avoir tous les boutons de travail, je dois écrire une connexion à chacun d'eux, un peu comme ceci:
connect(ui->button1, SIGNAL(clicked()), this, SLOT(writeNum()));
Comme ils utilisent tous le même emplacement, la seule chose qui les changements sont le bouton utilisé, donc l'expéditeur suivant sera ui->button2
, ui->button3
, et ainsi de suite. Ma question est la suivante: existe-t-il un moyen de réduire le nombre de connexions définies?
Editer: Here est un lien utile discutant précisément de ce problème, en détail.
Merci pour le conseil sur QSignalMapper, je pensais qu'il y aurait une meilleure façon de le faire. –