Salut les gens, voilà je commence à utiliser QT, et déjà j'ai un problème en voulant utiliser les slots; dans mon application de test, je veux en cliquant sur un bouton mettre à jour un QLabel, un truc que j'arrive trés bien à faire en Java avec Swing, là mon programme ne réagit pas, pourtant j'ai aucune erreur de compilation.

Voilà mon code:
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
# include <QApplication>
# include <QString>
# include <QPushButton>
# include <QLabel>
# include <QVBoxLayout>
# include <QWidget>
 
int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QPushButton *quit = new QPushButton("Hello world");
    QLabel *label = new QLabel("Label");
    QVBoxLayout *layout = new QVBoxLayout();
    QWidget *widget = new QWidget();
 
    quit->resize(300, 40);
    //quit->setFont(QFont("Arial", 18, QFont::Bold));
    //QObject::connect(quit, SIGNAL(clicked()), &app, SLOT(quit()));
    QObject::connect(quit, SIGNAL(clicked()), label, SLOT(setText(QString("test"))));
 
    layout->addWidget(quit);
    layout->addWidget(label);
 
    widget->setLayout(layout);
    widget->show();
 
    return app.exec();
}
Vous saurez me dire pourquoi le connect entre le bouton quit et app pour quitter fonctionne, et pas le connect avec mon QLabel ?
J'utilise QT 4, si besoin de plus d'infos demandez moi

Merci !