Le slot ne réagit pas au signal
Bonjour,
Je suis un débutant qui apprend le c++. Maintenant, j'essaie de faire des signaux et des slots. Mon application est seulement constitué d'un bouton ,que lorsque l'on clique dessus, il ferme l'application. Mais quand je clique sur le bouton, rien se passe. Quelqu'un peut m'aider SVP.
MaFenetre.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #ifndef MAFENETRE_H
#define MAFENETRE_H
#include <iostream>
#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QCoreApplication>
class MaFenetre : public QWidget
{
public:
MaFenetre();
MaFenetre(int tailleX,int tailleY);
private:
QPushButton *m_bouton;
};
#endif // MAFENETRE_H |
MaFenetre.cpp
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
| #include "MaFenetre.h"
MaFenetre::MaFenetre(): QWidget()
{
setFixedSize(500,500);
m_bouton = new QPushButton("Clique sur moi", this);
m_bouton->setFont(QFont("Comic Sans MS",20));
m_bouton->setCursor(Qt::PointingHandCursor);
m_bouton->setIcon(QIcon(QCoreApplication::applicationDirPath()+"/smile.png"));
m_bouton->setGeometry(160,220,200,125);
}
MaFenetre::MaFenetre(int tailleX, int tailleY) : QWidget()
{
setFixedSize(tailleX,tailleY);
m_bouton = new QPushButton("Clique sur moi", this);
m_bouton->setFont(QFont("Comic Sans MS",20));
m_bouton->setCursor(Qt::PointingHandCursor);
m_bouton->setIcon(QIcon(QCoreApplication::applicationDirPath()+"/smile.png"));
m_bouton->setGeometry(160,220,200,125);
QObject::connect(m_bouton,SIGNAL(clicked()),qApp,SLOT(quit()));
} |
main.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #include <QApplication>
#include <QtWidgets>
#include <QPushButton>
#include "MaFenetre.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MaFenetre fenetre;
fenetre.show();
return app.exec();
} |
tutorial.pro
Code:
1 2 3 4 5 6 7 8
| QT += widgets
SOURCES += \
main.cpp \
MaFenetre.cpp
HEADERS += \
MaFenetre.h |