天天看點

Qt 5 等待提示框(開源 動态圖)

        QT 使用 GIF動态圖來實作等待提示框

本文作者原創,轉載請附上文章出處與本文連結。

效果圖:

.H

#ifndef DIALOG_LOADING_H
#define DIALOG_LOADING_H

#include <QDialog>
#include <QDesktopWidget>
#include <QMovie>
namespace Ui {
class dialog_loading;
}

class dialog_loading : public QDialog
{
    Q_OBJECT

public:
    explicit dialog_loading(QWidget *parent = nullptr);
    ~dialog_loading();
    int OnInitDialog(QString imageFile);
private:
    Ui::dialog_loading *ui;

};

#endif // DIALOG_LOADING_H
           

.CPP

#include "dialog_loading.h"
#include "ui_dialog_loading.h"

dialog_loading::dialog_loading(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::dialog_loading)
{
    ui->setupUi(this);
    setWindowFlags(Qt::FramelessWindowHint);//無邊框
    setAttribute(Qt::WA_TranslucentBackground);//背景透明

    //螢幕居中顯示
    int frmX = width();
    int frmY = height();

    QDesktopWidget w;
    int deskWidth = w.width();
    int deskHeight = w.height();

    QPoint movePoint(deskWidth / 2 - frmX / 2, deskHeight / 2 - frmY / 2);
    move(movePoint);
    //border-image: url(:/new/image/image/loading.gif)
    //加載gif圖檔
    QMovie *movie = new QMovie(":/new/image/image/loading.gif");
    ui->label_gif->setMovie(movie);
    movie->start();

}

dialog_loading::~dialog_loading()
{
    delete ui;
}
           

同時也提供了源碼下載下傳:

        分為DLL生産項目和調用項目,因為主要是想看看封裝成DLL後的效果,是以順便就寫出來了。

        下載下傳位址:https://download.csdn.net/download/qq_37529913/33148807

繼續閱讀