QML性能
1) Limit JavaScript
a) inline JavaScript: 内联的JavaScript方法;
1. 将js方法放置在Element内部; 2. 尝试将语句写在一行内; e.g.
|
1
2
3
4
5
6
7
8
|
Item {
function factorial(a) {
...
}
MouseArea {
onClicked: console.log(factorial(10)) //try to avoid the {brace};
}
}
|
b) 对于复杂的逻辑业务, 用C++代替JavaScript实现;
2) Clipping: 只有在必须的时候使用 Item.clip, 在painting的时候它会影响程序的效率;
3) Image:
a) 使用 Image.sourceSize 属性来将图片扩大以显示大图片, 这样可以省下大图片所占的空间;
b) 只有在必须的时候使用 Image.smooth.
c) 不要使用一大堆复杂的Element组合来画图, 提供一张IMAGE资源就可以简单有效地显示静态图像;
4) Anchors vs. Binding:
使用anchors比起把x,y位置根据互相关系固定起来的方式要有效率, 而且在左右互换或实现镜像的时候更合适;
5) Opaque Items: 如果一个Item被一个不透明的item整个遮盖住了, 把这个item的opacity设为0;
6) View delegates: cacheBuffer 设定一定的值(根据具体情况选择大小), 把View里面的Item缓存起来;
由系统环境决定:
-Use showFullScreen() 全屏显示
-Use a different graphics system 更换一个图形系统;
Refer to: http://doc.qt.digia.com/4.7/qdeclarativeperformance.html & http://cdumez.blogspot.com/2010/12/ways-to-improve-qml-performance.html
QML性能的更多相关文章
- Qt qml调试,qml性能分析和优化工具
QML语言为qt推出的用于界面编程的语言. 1)如何在qt creator中进行调试qml: 以Qt Creator 4.6.2为例: 在qt creator的debug模式下,可以直接在qml中打断 ...
- qml性能优化(来源于群友分享);
Qt quick性能优化 使用时间驱动 避免定时轮询: 使用信号槽形式: 使用多线程 C++; QML WorkerScript元件: 使用Qt Quick Compiler 只需要再PRO文件中添加 ...
- Qml应用程序的性能考虑与建议
本文翻译自Qt官网文档: http://doc.qt.io/qt-5/qtquick-performance.html QtQml应用程序的性能考虑与建议 1.时间考虑 作为一名程序开发者,应该努力使 ...
- QtQml 应用程序的性能考虑与建议(来自小V的翻译)
QtQml 应用程序的性能考虑与建议 原文:csdn aidear_evo QtQml应用程序的性能考虑与建议 本文翻译自Qt官网文档:http://doc.qt.io/qt-5/qtquick-pe ...
- Qt Creator 4.3.0,Quick Designer里面也看以同时看到和编辑qml code了(Qt5.9的配套IDE)
作者:Summer Fang链接:https://www.zhihu.com/question/60486611/answer/177584284来源:知乎著作权归作者所有.商业转载请联系作者获得授权 ...
- Qt5.9 官方发布的新版本亮点的确不胜枚举(而且修复2000+ bugs)
作者:Summer Fang链接:https://www.zhihu.com/question/60486611/answer/177584284来源:知乎著作权归作者所有.商业转载请联系作者获得授权 ...
- Qt最好用评价最高的是哪个版本?
来源: http://www.qtcn.org/bbs/read-htm-tid-89455.html /// Qt4: 4.8.7 4.X 系列终结版本 Qt5 : 5.6 LT ...
- 图形性能(widgets的渲染性能太低,所以推出了QML,走硬件加速)和网络性能(对UPD性能有实测数据支持)
作者:JasonWong链接:http://www.zhihu.com/question/37444226/answer/72007923来源:知乎著作权归作者所有,转载请联系作者获得授权. ---- ...
- QML引擎的演进,第一部分
原文链接:Lars Knoll – Evolution of the QML engine, part 1 QML作为一项技术对于Qt的成功变得越来越重要.它允许创建流畅的动画界面,与现今的市场预期相 ...
随机推荐
- 解决yum升级的问题“There was a problem importing one of the Python modules”
yum命令升级的时候,报出这个错误. There was a problem importing one of the Python modules required to run yum. The ...
- java中的object类
在Java中,任何一个类都扩展来自Object类.当没有为某一个类定义父类时,Java会自动定义Object类为其父类. object类的一些常用方法: (1)public String toStri ...
- How to Create a Java Concurrent Program
In this Document Goal Solution Overview Steps in writing Java Concurrent Program Template ...
- Ormlite自定义db的位置和自动更新问题
先说说以下为测试代码,有点乱,大家讲究着看.以下例子都是采用的ormlite的框架. 第一步,自定义数据库的位置: 建议一个类DatabaseHelper 继承 OrmLiteSqliteOpenHe ...
- javascript笔记整理(对象的继承顺序、分类)
Object.prototype.say=function(){ alert("我是顶层的方法"); } children.prototype=new parent(); pare ...
- Spring mvc之提交表单
表单内容: <body> <form action="user/login"> <table> <tr> <td>用户名 ...
- POJ 1042 Gone Fishing (贪心)(刘汝佳黑书)
Gone Fishing Time Limit: 2000MS Memory Limit: 32768K Total Submissions: 30281 Accepted: 9124 Des ...
- SVN 1.8.x 服务器安装(转)
目录[-] 一. SVN 服务器下载.安装 1. 关于 Subversion 1.8.11 2. 兼容性问题 3. 安装包下载 3.1 VisualSVN 3.2 Win32Svn 3.3 SlikS ...
- 【linux】内核+文件系统下载到开发板
K开发 欢迎转载,转载时请保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:htt ...
- css3动画与js动画的一些理解
http://zencode.in/19.CSS-vs-JS%E5%8A%A8%E7%94%BB%EF%BC%9A%E8%B0%81%E6%9B%B4%E5%BF%AB%EF%BC%9F.html 首 ...