Simppeli QTimer esimerkki
Tee Dialog sovellus ja liitä siihen Dial objekti, tee alla kuvatut muutokset Dialog.cpp ja .h tiedostoihin
#include "dialog.h" #include "ui_dialog.h" Dialog::Dialog(QWidget *parent): QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); timer = new QTimer(this);//luo uusi ajastin //liitä ajastimen timeout slotiin update connect(timer, SIGNAL(timeout()), this, SLOT(update())); timer->start(1000);//käynnistä ajastin, timeout sekunnin välein Arvo=0;//muuttuja joka viedään dial objektille } Dialog::~Dialog() { delete ui; } void Dialog::update()//slot joka laukeaa ajastimen timeoutista { Arvo++; ui->dial->setValue(Arvo); }
Otsikkotiedosto
#ifndef DIALOG_H #define DIALOG_H #include <QtGui/QDialog> #include <QTimer> namespace Ui { class Dialog; } class Dialog : public QDialog { Q_OBJECT public: Dialog(QWidget *parent = 0); ~Dialog(); private slots: void update(); private: Ui::Dialog *ui; QTimer *timer;//osoitin ajastimeen int Arvo; }; #endif // DIALOG_H