Bonjour à tous
Je souhaite réaliser un compte à rebourd, et afficher le temps qui passe. J'ai donc utilisé QTimer, et pour j'ai pensé utliser un QLCDNumber. J'ai créé une nouvelle classe héritant de QTimer pour créer un signal qui emet le temps qui reste du QTimer, je vous met le constructeur de mon QTimer personnalisé :
Code :
- MyQTimer::MyQTimer(QObject * parent) : QTimer(parent)
- {
- int i=4;
- while (isActive()==true)
- {
- if (timerId()==1000*i)
- {
- emit tempsEcoule(i);
- i--;
- }
- }
- }
|
Et voilà la connexion que je fais dans ma classe qui utilise MyQTimer:
Code :
- MyQTimer* timer = new MyQTimer;
- timer->start(5000);
- QLCDNumber* m_lcd = new QLCDNumber(this);
- m_lcd->setSegmentStyle(QLCDNumber::Flat);
- QObject::connect(timer, SIGNAL(tempsEcoule(int)), m_lcd, SLOT(display(int)));
|
Mais le problème c'est que QLCDNumber. reste à zero, je ne comprend pas vraiment pourquoi.
Pouvez-vous m'aider?
Merci