通过动画图像(又名预加载器)或替代方法加载 Qt 指示器?
Qt load indicator by animated image (aka preloader) or alternative?
我想在加载时在我的 table 视图中显示动画加载程序图像。下面的屏幕截图显示了印象。
我为此使用了动画 gif,由 setStyleSheet
显示为居中背景图像。
我面临两个问题:
- 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
- 加载完成后我无法清除图像。如果我用
setStyleSheet("")
清除样式表,那么它仍然会显示。对我有用的唯一技巧是将其覆盖为 1 像素透明图像
是否有解决这些问题的方法或者更好的方法(覆盖小部件?/为此专门设计的 Qt 小部件)?
(我的代码以 Qt 5.4 / Win7 为例)
编辑: 展示了如何为这样的 gif 制作动画,但我不知道如何在这种叠加/背景样式中使用它。
使用QProgressIndicator代替gif动画。
PS: 上面说是Qt4,但是Qt5可以用。
QtWaitingSpinner也是一个优雅的解决方案。
我想在加载时在我的 table 视图中显示动画加载程序图像。下面的屏幕截图显示了印象。
我为此使用了动画 gif,由 setStyleSheet
显示为居中背景图像。
我面临两个问题:
- 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 - 加载完成后我无法清除图像。如果我用
setStyleSheet("")
清除样式表,那么它仍然会显示。对我有用的唯一技巧是将其覆盖为 1 像素透明图像
是否有解决这些问题的方法或者更好的方法(覆盖小部件?/为此专门设计的 Qt 小部件)?
(我的代码以 Qt 5.4 / Win7 为例)
编辑: 展示了如何为这样的 gif 制作动画,但我不知道如何在这种叠加/背景样式中使用它。
使用QProgressIndicator代替gif动画。
PS: 上面说是Qt4,但是Qt5可以用。
QtWaitingSpinner也是一个优雅的解决方案。