QT使用QMovie实现GIF动画播放,可是按钮全部没有用,无法播放。

mainwindow.cpp代码:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);

}

MainWindow::~MainWindow()
{
delete ui;

ui->label->setAlignment(Qt::AlignCenter);
ui->label->setBackgroundRole(QPalette::Dark);
ui->label->setAutoFillBackground(true);

movie=new QMovie(this);
movie->setFileName("../myMovie/3.gif");
movie->setCacheMode(QMovie::CacheAll);
QSize size=ui->label->size();
movie->setScaledSize(size);
ui->label->setMovie(movie);
ui->label->show();

ui->horizontalSlider->setMinimum(0);
ui->horizontalSlider->setMaximum(movie->frameCount());
connect(movie,SIGNAL(frameChanged(int)),
        ui->horizontalSlider,SLOT(setValue(int)));

}

void MainWindow::on_horizontalSlider_valueChanged(int value)
{
movie->jumpToFrame(value);
}

void MainWindow::on_pushButton_clicked()
{
movie->start();
}

void MainWindow::on_pushButton_2_toggled(bool checked)
{
movie->setPaused(checked);
}

void MainWindow::on_pushButton_3_clicked()
{
movie->stop();
}

void MainWindow::on_pushButton_4_clicked()
{
int id=movie->currentFrameNumber();
QPixmap pix=movie->currentPixmap();
pix.save(QString("../myMovie/%1.png").arg(id));
}

void MainWindow::on_spinBox_valueChanged(int value)
{
movie->setSpeed(value);
}

mainwindow.h代码:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include
#include

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();

private slots:
void on_horizontalSlider_valueChanged(int value);

void on_pushButton_clicked();

void on_pushButton_2_toggled(bool checked);

void on_pushButton_3_clicked();

void on_pushButton_4_clicked();

void on_spinBox_valueChanged(int arg1);

private:
Ui::MainWindow *ui;
QMovie *movie;
};

#endif // MAINWINDOW_H

出现错误:
1.点击开始按钮,没有反应。
2.点击暂停、停止、截屏、水平滑块等停止工作。

图片说明

图片说明

图片说明

http://blog.csdn.net/xuancailinggan/article/details/50602932

图片说明

在析构函数里写生成代码。。。。。。