Bonjour ;
je veux appeler une fenêtre à partir d'un bouton mais je n'arrive pas à le faire qui peux m'aider .
cordialement
Bonjour ;
je veux appeler une fenêtre à partir d'un bouton mais je n'arrive pas à le faire qui peux m'aider .
cordialement
Bonjour
Celui qui peux vous aider est une personne qui peut lire votre code actuel.
Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi
Ma page sur DVP
Mon Portfolio
Qui connaît l'erreur, connaît la solution.
Sans plus d'information, il est juste possible de te rediriger vers le concept de signal et de slot (par exemple, lis http://qt.developpez.com/tutoriels/introduction-qt/ pour une introduction assez complète).
Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.
Créer des applications graphiques en Python avec PyQt5
Créer des applications avec Qt 5.
Pas de question d'ordre technique par MP !
Bonjour ;voila mon code:
main.cpp:
le mainwindow.cpp
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 #include "mainwindow.h" #include <QApplication> #include <QtGui> #include <QPixmap> #include <QLabel> #include "ui_mainwindow.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }
le mainwindow.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 #include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_2_clicked() { QWidget::close(); }
et la fentre que je veux appelé est lecture dont le code est le suivant:
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 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: void on_pushButton_2_clicked(); private: Ui::MainWindow *ui; }; #endif // MAINWINDOW_H
lecture.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 #include "lecture.h" #include "ui_lecture.h" lecture::lecture(QWidget *parent) : QMainWindow(parent), ui(new Ui::lecture) { ui->setupUi(this); } lecture::~lecture() { 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 #ifndef LECTURE_H #define LECTURE_H #include <QMainWindow> namespace Ui { class lecture; } class lecture : public QMainWindow { Q_OBJECT public: explicit lecture(QWidget *parent = 0); ~lecture(); private: Ui::lecture *ui; }; #endif // LECTURE_H
Ici :
C'est la fonction qui est appelée lorsque l'on appuie sur le bouton. Pourquoi ne pas créer la nouvelle fenêtre, aussi, dans cette fonction (genre new lecture;).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 void MainWindow::on_pushButton_2_clicked() { QWidget::close(); }
Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi
Ma page sur DVP
Mon Portfolio
Qui connaît l'erreur, connaît la solution.
j'ai pensé a cette méthode mais elle m'affiche qu'une fenêtre vide or que moi je veux afficher la fenêtre qui contient mon travail (ya d'autre bouton et image à afficher)
voila le code que j'ai utiliser pour ceci ;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 QWidget *form = new QWidget; form->show(); hide();
(Je ne suis qu'un débutant, mais je vais essayer de t'aider)
Dans le CPP de ta première fenêtre tu dois créer la connexion :
Et ensuite dans ton VOID, tu ouvre la deuxième fenêtre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part QObject::connect("le nom de ton bouton", SIGNAL(clicked()), this, SLOT( "le nom du VOID... à ouvrir()));
Essai et dis moi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 lecture *f = new lecture(); f->show();
Partager