Використання таймера в Qt, Народне програмування
Для використаннятаймера Qt призначений класQTimer. Спочатку треба задати час, після якого він спрацьовуватиме. Також потрібно визначити слот, який обробить сигнал, випромінюваний внаслідок переповнення таймера. Отже, обов'язковою умовою використанняQTimer є можливість використання сигналів і слотів, отже, клас, у якому використовується таймер може бути спадкоємцемQObject. Наприклад створимо простенький годинник.
У класі, який є спадкоємцемQObject(для прикладу використовуємо стандартний клас головного вікна) оголошуємо екземплярQTimer і слот для обробки:
class MainWindow: public QMainWindow < Q_OBJECT public: QTimer *timer; .
public slots: / / Слот, який спрацьовує при переповненні таймера void timer_overflow ();
//Підключаємо клас для визначення поточного часу #include
Далі, у конструкторі вікна
//Зв'язуємо сигнал переповнення таймера зі слотом QObject::connect(timer,SIGNAL(timeout()), this, SLOT(timer_overflow()));
//Задаємо час спрацьовування таймера (мс) timer->start(1000); >
//Наступний метод (слот) викликається при кожному переповненні таймера void MainWindow::timer_overflow() < //Оновлюємо значення часу на формі ui->label->setText(QTime::currentTime().toString()); >
У результаті отримали "годинник":
