qt - 缓存图像/渐变?
问题描述
我有TableView
大约 40 行和 4 列。所有 160 个单元格都有Rectangle
一个渐变。我使用启用了快速编译器的 Qt5.13。然而,当我以相对较大的时间间隔(100 毫秒)为所有这 160 个单元格设置动画时,UI 将变得无响应。这意味着渲染渐变需要很长时间。事实上,如果我只渲染 40 个这样的单元格,我可以轻松地以 100 毫秒的间隔进行更新。
矩形代表进度条。它们具有从上到下的渐变。但是,进度条的值(长度)也会改变渐变。这就是为什么对于每个值(长度)点,必须重新创建和重新渲染渐变。
显然,这很慢。我想做的是为每个值(长度)点缓存渐变。它们代表百分比,所以我只需要缓存 101。我很确定这会提高这里的性能。
但是,如何在 QML 中自己缓存渐变(或任何对象)?更一般(或额外)的问题是:如何在多个 QML 文件之间拥有共享的 QML 资源?
解决方案
如果您可以访问大内存,您可以尝试加载图像而不是渲染。也许您也可以尝试缩放 SVG。
推荐阅读
- javascript - 随机放置淡入淡出的 div
- sql - 尝试取消嵌套 Text[] 类型的列正在跳过为空的列 - Postgres
- sql-server - SQL 数据库 DevOps CI-CD 管道是否需要 Visual Studio?
- react-native - 凭据:“省略”选项在 MaxToyberman/react-native-ssl-pinning 中不起作用
- postgresql - 分析查询 postgres
- php - 获取 Wordpress 页面加载的每个函数的执行时间。(用于分析,寻找性能瓶颈)
- build - NextJs 构建失败
- spring-boot - Spring boot Okhttp 调用成功但 RestTemplate 给出 Connection Timed Out
- javascript - 如何从模板创建多个具有给定名称的电子表格
- amazon-web-services - How to insert AWS Cloudtrail logs to AWS Timestream database table?