Problème avec les signaux
Bonjour,
J'ai créé 2 boutons, un slider. Chacun ont un signal : quitter, à propos de QT et redimensionner la largeur de la fenêtre. Bien que l'affichage des objets crées ait lieu, leur signal ne semble pas fonctionner car rien ne se passe à leur appui.
MAIN.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 25 26 27 28
|
#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QLCDNumber>
#include <QSlider>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget main_windows;
main_windows.setFixedSize(300, 300);
QPushButton bouton0( "A propos de" , &main_windows );
QPushButton bouton1( "Quitter " , &main_windows );
QSlider slider ( Qt::Horizontal, &main_windows );
bouton1.setGeometry ( 050, 110, 200, 050 );
slider.setGeometry ( 050, 170, 150, 020 );
slider.setRange ( 200, 600 );
main_windows.show();
return app.exec();
} |
FENETRE.CPP
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #include "fenetre.h"
MaFenetre::MaFenetre() : QWidget()
{
setFixedSize(300, 150);
bouton0 = new QPushButton("", this);
bouton1 = new QPushButton("", this);
slider = new QSlider(Qt::Horizontal, this);
QObject::connect(bouton0, SIGNAL(clicked()) , qApp, SLOT( aboutQt() ) );
QObject::connect(bouton1, SIGNAL(clicked()) , qApp, SLOT( quit() ) );
QObject::connect(slider , SIGNAL(valueChanged(int)), this, SLOT( ChangeWindowsWidth(int)) );
}
void MaFenetre::ChangeWindowsWidth(int width)
{
setFixedSize(width, 100);
} |
FENETRE.H
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
| #ifndef DEF_MAFENETRE
#define DEF_MAFENETRE
#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QLCDNumber>
#include <QSlider>
class MaFenetre : public QWidget // On hérite de QWidget (IMPORTANT)
{
Q_OBJECT
public:
MaFenetre();
public slots:
void ChangeWindowsWidth(int width);
private:
QPushButton *bouton0;
QPushButton *bouton1;
QSlider *slider;
};
#endif |
Merci d'avance.