You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt 6.1.2 MSVC2019 64位Win10环境下QML indeterminate ProgressBar无动画问题

问题根因

这是Qt 6.1.x版本的官方已知BUG:Windows平台下Qt Quick Controls 2默认调用的Windows原生样式中,未正确实现ProgressBar indeterminate状态的动画渲染逻辑,该缺陷在Qt 6.2.0及后续正式版本已完成修复。Qt 5.15.2版本的样式层不存在该实现问题,因此相同代码运行效果正常。

异常运行效果:
无动画进度条运行效果
正常运行效果(Qt 5.15.2):
正常动画进度条运行效果

解决方案
  • 方案1:优先升级Qt开发环境到6.2.0及以上稳定版本,无需调整现有代码即可直接恢复indeterminate状态的加载动画效果。
  • 方案2:若业务需求必须保留Qt 6.1.2版本使用,可手动指定全局使用Fusion样式替代默认的Windows原生样式:
    在C++工程的main函数中,实例化QGuiApplication之后、加载QML引擎之前添加如下代码:
    #include <QQuickStyle>
    
    int main(int argc, char *argv[])
    {
        QGuiApplication app(argc, argv);
        // 新增该行设置全局样式
        QQuickStyle::setStyle("Fusion");
        QQmlApplicationEngine engine;
        // 后续原有逻辑保持不变
    }
    
  • 方案3:如果不需要全局修改应用样式,可单独自定义该ProgressBar的控件实现,重写contentItem属性自行实现indeterminate状态的流动动画,完全脱离原生样式的逻辑限制。

内容的提问来源于stack exchange,提问作者sfzhang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:00:04