#include "animatedimagebox.h" AnimatedImageBox::AnimatedImageBox(QWidget *parent) : QLabel(parent), index(0) { timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(step())); } AnimatedImageBox::~AnimatedImageBox() { images.clear(); } void AnimatedImageBox::load(QString fileName) { QPixmap pixmap; pixmap.load(fileName); if (images.isEmpty()) setPixmap(pixmap); images.append(pixmap); // index = 0; } void AnimatedImageBox::clear() { images.clear(); // index = 0; } void AnimatedImageBox::start(int msec) { index = 0; timer->start(msec); } void AnimatedImageBox::stop() { timer->stop(); } void AnimatedImageBox::step() { if (images.isEmpty()) return; if (index >= images.length()) index = 0; setPixmap(images.at(index++)); }