通过动画图像(又名预加载器)或替代方法加载 Qt 指示器?

Qt load indicator by animated image (aka preloader) or alternative?

我想在加载时在我的 table 视图中显示动画加载程序图像。下面的屏幕截图显示了印象。

我为此使用了动画 gif,由 setStyleSheet 显示为居中背景图像。

我面临两个问题:

  1. gif 已显示,但不是动画。是否可以将动画 gif 显示为背景图像(通过样式表)?备注:一般gif动画是可以的,如Qt - How to show gif(animated) image in QGraphicsPixmapItem but there seems to be no animated gif with style sheets Animated Gif static in QStyleSheet
  2. 加载完成后我无法清除图像。如果我用 setStyleSheet("") 清除样式表,那么它仍然会显示。对我有用的唯一技巧是将其覆盖为 1 像素透明图像

是否有解决这些问题的方法或者更好的方法(覆盖小部件?/为此专门设计的 Qt 小部件)?

(我的代码以 Qt 5.4 / Win7 为例)


编辑: 展示了如何为这样的 gif 制作动画,但我不知道如何在这种叠加/背景样式中使用它。

使用QProgressIndicator代替gif动画。

PS: 上面说是Qt4,但是Qt5可以用。

QtWaitingSpinner也是一个优雅的解决方案。

Python Version here.