Bonjours,
Pour réaliser un programme sur Qt 4.6 et je dois faire une boucle qui crée des QLabel qui affiche "label" suivi d'un int (converti en char) que je récupére sur une map<int,string>.
Ca donne :
dans Fenetre.cpp :
Fenetre.h :Code:
1
2
3
4
5
6
7
8
9 for(it=Membres::lesMembres->begin();it!=Membres::lesMembres->end();it++) { int num = (char)((*it).first); QString label("label"); QChar qnum(num); QString nomLabel(label.append(qnum)); QLabel * label1= new QLabel(nomLabel); mainLayout->addWidget(label1); }
Mais j'obtiens la création de quatre QLabel qui affichent tous "label"...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
38
39
40
41
42
43 #ifndef FENETRE_H #define FENETRE_H #include <QWidget> #include <QPushButton> #include <QHBoxLayout> #include <QVBoxLayout> #include <QLabel> #include <QFont> #include <QApplication> //namespace Ui { // class Fenetre; //} class Fenetre : public QWidget { Q_OBJECT public: Fenetre(QWidget *parent = 0); //~Fenetre(); QPushButton *btMembre; QPushButton *btOrga; QPushButton *btPlan; QPushButton *btQuitter; QLabel *titre; QLabel *affiche; QHBoxLayout *layout1; QHBoxLayout *layout2; QVBoxLayout *mainLayout; public slots: void quitter(); protected: // void changeEvent(QEvent *e); private: // Ui::Fenetre *ui; }; #endif // FENETRE_H
N'hésitez pas à me demander plus de renseignement si je n'est pas était clair.
Merci d'avance.