QT程序啓動畫面gif動畫有靜止背景的解決方法

最近在做QT的程序啓動畫面的動畫,用的是gif的動圖。但是有個問題,就是總有一幀在背景那是靜止的,也就是說動圖疊上靜止圖上。如下圖所示的齒輪所示。

左邊的齒輪背後有個靜止的齒輪,一直會在那,右邊這個纔是正確的,嘗試了N多方法,還沒有解決。直到後來,有一個人叫了我一聲靚仔。我突然就發現了,原來是這樣的。看下面的代碼:

#include "mainwindow.h"
#include <QApplication>
#include <qsplashscreen.h>
#include <qlabel.h>
#include <qmovie.h>
#include <Windows.h>

int main(int argc, char *argv[])
{
        QApplication a(argc, argv);
        //找一張跟GIF動圖大小的全透明圖像,然後加載進行就可以了
        QPixmap pixmappp("F:/LYB/xray/xray/x64/Release/Resources/ICO/toummin.gif");
        QSplashScreen splashhh(pixmappp);
        QMovie *Movie = new             
        QMovie("F:/LYB/xray/xray/x64/Release/Resources/ICO/start5.gif");
        QLabel labelhhh(&splashhh);
        labelhhh.setMovie(Movie);

        Movie->start();
        splashhh.show();
        for (int i = 0; i < 5000; i += Movie->speed())
        {


           // QThread::sleep(Movie->speed());
            Sleep(Movie->speed());

            QCoreApplication::processEvents();
        }
    MainWindow w;
    w.show();

    return a.exec();
}
 把這張圖片換成與GIF動圖一樣大小的全透明圖像就行了。
 QPixmap pixmappp("F:/LYB/xray/xray/x64/Release/Resources/ICO/toummin.gif");

找不到?用PS新建一個,然後把背景去掉,存儲爲web所用格式,也就是gif就可以了

特來分享。

我是氣搬磚大學生,我是全廣東最靚的仔!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章