Animation Qt如何设置QProgressBar的动画?

Animation Qt如何设置QProgressBar的动画?,animation,progress-bar,qt5,Animation,Progress Bar,Qt5,在某些Qt5样式(如Breeze)中,处于不确定状态(最小值==最大值)的进度条显示动画 我想创建自己的进度小部件,它在状态栏中使用的视觉足迹较少,因此我查看了QProgressBar的源代码,以了解动画是如何实现的 令我惊讶的是,我在里面没有找到任何动画代码。没有计时器。没有事件筛选器 这个动画是如何实现的?魔尘就是方法。它在小部件上调用,包括QProgressBar实例 微风样式设置自己的动画逻辑。进度条由处理。它使用QPropertyAnimation提升其自身的内部值 它的registe

在某些Qt5样式(如Breeze)中,处于不确定状态(最小值==最大值)的进度条显示动画

我想创建自己的进度小部件,它在状态栏中使用的视觉足迹较少,因此我查看了QProgressBar的源代码,以了解动画是如何实现的

令我惊讶的是,我在里面没有找到任何动画代码。没有计时器。没有事件筛选器

这个动画是如何实现的?

魔尘就是方法。它在小部件上调用,包括QProgressBar实例

微风样式设置自己的动画逻辑。进度条由处理。它使用
QPropertyAnimation
提升其自身的内部值

它的
registerWidget
方法是从微风风格的
polish
实现中调用的。这进而将小部件保存在内部映射中

当动画更新内部值时,将迭代贴图,并在当前正在设置动画的所有小部件上调用
update
(通过QMetaObject使用间接方式)