int timerId = startTimer(delay);переопределяем virtual void QObject::timerEvent( QTimerEvent* e ){ // сюда управление будет попадать с частотой delay в миллисекундах if( needToStop ) { killTimer(timerId); }}
MyProb::MyProb(QWidget *parent) : QWidget(parent){ myTimerId = startTimer(30); }void MyProb::paintEvent(QPaintEvent * /* event */){ QPainter painter(this); painter.setPen(QPen(Qt::red,1, Qt::DashLine)); painter.drawLine(0, 0, 200, 200); painter.setPen(QPen(Qt::red,5, Qt::DashLine));}void MyProb::MyDraw(){QPainter painter(this);int x;while (x < 30) { painter.drawPoint(x, 20); ++x;} repaint();}void MyProb::timerEvent(QTimerEvent *event){ killTimer(myTimerId); MyDraw(); }