Bonjour, je souhaiterais encore un peu d'aide.
J'ai deux fenêtres. J'arrive à envoyer des informations de la deuxième à la première, mais pas de la première à la deuxième.
De la deuxième à la première, je n'arrive qu'à envoyer des informations entre deux Lcd alors que je souhaiterais envoyer les informations d'un SpinBox à un Lcd.
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 #include "essaideuxfenetres.h" #include "ui_essaideuxfenetres.h" #include "deuxiemefenetres.h" #include "ui_deuxiemefenetres.h" #include <QSpinBox> #include <QPushButton> #include <QLCDNumber> #include <QVBOxLayout> essaiDeuxFenetres::essaiDeuxFenetres(QWidget *parent) : QMainWindow(parent), ui(new Ui::essaiDeuxFenetres) { ui->setupUi(this); QWidget *zoneCentrale = new QWidget; chiffre1 = new QSpinBox; bouton1 = new QPushButton("BOUTON1"); resultat1 = new QLCDNumber; m_lcd = new QLCDNumber; QVBoxLayout *boxLayout = new QVBoxLayout; boxLayout->addWidget(chiffre1); boxLayout->addWidget(bouton1); boxLayout->addWidget(m_lcd); boxLayout->addWidget(resultat1); zoneCentrale->setLayout(boxLayout); setCentralWidget(zoneCentrale); QObject::connect(bouton1, SIGNAL(clicked()), this, SLOT(chiffre1Fenetre())); QObject::connect(bouton1, SIGNAL(clicked()), this, SLOT(ouvreDeuxFenetre())); } void essaiDeuxFenetres::chiffre1Fenetre() { int somme = chiffre1->value(); m_lcd->display(somme); emit envoyerChiffre1(somme); } void essaiDeuxFenetres::m_resultat1(int result) { resultat1->display(QString::number(result)); } void essaiDeuxFenetres::ouvreDeuxFenetre() { deuxiemeFenetres *f = new deuxiemeFenetres(); f->show(); QObject::connect(f, SIGNAL(envoyerChiffre2(int)), this, SLOT(m_resultat1(int))); } essaiDeuxFenetres::~essaiDeuxFenetres() { delete ui; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 #include "deuxiemefenetres.h" #include "ui_deuxiemefenetres.h" #include "essaideuxfenetres.h" #include "ui_essaideuxfenetres.h" #include <QSpinBox> #include <QPushButton> #include <QLCDNumber> #include <QVBOxLayout> deuxiemeFenetres::deuxiemeFenetres(QWidget *parent) : QMainWindow(parent), ui(new Ui::deuxiemeFenetres) { ui->setupUi(this); QWidget *zoneCentrale = new QWidget; chiffre2 = new QSpinBox; bouton2 = new QPushButton("BOUTON1"); resultat2 = new QLCDNumber; lcd2 = new QLCDNumber; QVBoxLayout *boxLayout = new QVBoxLayout; boxLayout->addWidget(chiffre2); boxLayout->addWidget(bouton2); boxLayout->addWidget(lcd2); boxLayout->addWidget(resultat2); zoneCentrale->setLayout(boxLayout); setCentralWidget(zoneCentrale); QObject::connect(bouton2, SIGNAL(clicked()), this, SLOT(chiffre2Fenetre())); QObject::connect(bouton2, SIGNAL(clicked()), this, SLOT(ouvreUneFenetre())); } void deuxiemeFenetres::chiffre2Fenetre() { int somme = chiffre2->value(); lcd2->display(somme); emit envoyerChiffre2(somme); } void deuxiemeFenetres::m_resultat2(int result) { resultat2->display(QString::number(result)); } void deuxiemeFenetres::ouvreUneFenetre() { essaiDeuxFenetres *f = new essaiDeuxFenetres(); QObject::connect(f, SIGNAL(envoyerChiffre1(int)), this, SLOT(m_resultat2(int))); } deuxiemeFenetres::~deuxiemeFenetres() { delete ui; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #ifndef ESSAIDEUXFENETRES_H #define ESSAIDEUXFENETRES_H #include <QMainWindow> #include <QSpinBox> #include <QPushButton> #include <QLCDNumber> #include <QVBOxLayout> namespace Ui { class essaiDeuxFenetres; } class essaiDeuxFenetres : public QMainWindow { Q_OBJECT public: explicit essaiDeuxFenetres(QWidget *parent = 0); ~essaiDeuxFenetres(); public slots: void chiffre1Fenetre(); void ouvreDeuxFenetre(); void m_resultat1(int result); signals: void envoyerChiffre2(int valueChanged); void envoyerChiffre1(int valueChanged); private: Ui::essaiDeuxFenetres *ui; QSpinBox *chiffre1; QPushButton *bouton1; QLCDNumber *resultat1; QLCDNumber *m_lcd; }; #endif // ESSAIDEUXFENETRES_H
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #ifndef DEUXIEMEFENETRES_H #define DEUXIEMEFENETRES_H #include <QMainWindow> #include <QSpinBox> #include <QPushButton> #include <QLCDNumber> #include <QVBOxLayout> namespace Ui { class deuxiemeFenetres; } class deuxiemeFenetres : public QMainWindow { Q_OBJECT public: explicit deuxiemeFenetres(QWidget *parent = 0); ~deuxiemeFenetres(); public slots: void chiffre2Fenetre(); void m_resultat2(int result); void ouvreUneFenetre(); signals: void envoyerChiffre2(int valueChanged); void envoyerChiffre1(int valueChanged); private: Ui::deuxiemeFenetres *ui; QSpinBox *chiffre2; QPushButton *bouton2; QLCDNumber *resultat2; QLCDNumber *lcd2; }; #endif // DEUXIEMEFENETRES_H
Partager