QLabel覆盖png over gif

时间:2017-12-29 15:42:52

标签: qt png overlay gif qlabel

我有一个QLabel,我可以设置一个gif作为qmovie动画或png显示为qpixmap。 我想要做的是为gif制作动画并在它上面放一个png。 两个图像都具有透明背景。 gif是动画的#34;加载圈",png是"检查"图标。

以下代码仅显示最后一个。

#define MOOD_RESULT ":/mood/mood_result.gif"
#define MOOD_SUCCESS ":/mood/mood_success.png"

ui->moodicon->setPixmap(QPixmap(MOOD_SUCCESS));

QMovie *movie = new QMovie(MOOD_RESULT);
ui->moodicon->setMovie(movie);
movie->start();

我希望Qt大师可以帮助我。

提前致谢

1 个答案:

答案 0 :(得分:0)

以下是可行的想法:

  1. 通过将影片逐个播放到像素图中手动组合图像,然后重复绘制静态图像,并在标签上设置结果。

  2. QLabel派生,重载paintEvent,并在调用QLabel::paintEvent后重写过静态图片。

  3. Overlay另一个带有电影的标签。