QML Performance
1) Limit JavaScript
a) inline JavaScript: 内联的JavaScript方法;
1. 将js方法放置在Element内部; 2. 尝试将语句写在一行内; e.g.
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 Performance的更多相关文章
- QML官方系列教程——QML Applications
附网址:http://qt-project.org/doc/qt-5/qmlapplications.html 假设你对Qt的官方demo感兴趣,能够參考本博客的另一个系列Qt5官方demo解析集 每 ...
- QML Image Element
QML Image Element The Image element displays an image in a declarative user interface More... Image元 ...
- Best Practices for QML and Qt Quick
Despite all of the benefits that QML and Qt Quick offer, they can be challenging in certain situatio ...
- QML被系统缓存的原理是比较时间戳
Gunnar Roth January 25, 2017 at 17:07 Afaik the cached qml file contains a checksum of the original ...
- qml 绘制高精地图之怀疑人生的加载速度
绘制高精地图时需要gps的经纬度坐标,之前的实现方式是QGeocoordinate类的经纬度变量通过json的方式在qml中使用. 以画线为例,使用方式是这样哒. for(var i in vehic ...
- Performance Monitor4:监控SQL Server的IO性能
SQL Server的IO性能受到物理Disk的IO延迟和SQL Server内部执行的IO操作的影响.在监控Disk性能时,最主要的度量值(metric)是IO延迟,IO延迟是指从Applicati ...
- Performance Tuning
本文译自Wikipedia的Performance tuning词条,原词条中的不少链接和扩展内容非常值得一读,翻译过程中暴露了个人工程学思想和英语水平的不足,翻译后的内容也失去很多准确性和丰富性,需 ...
- Performance Monitor3:监控SQL Server的内存压力
SQL Server 使用的资源受到操作系统的调度,同时,SQL Server在内部实现了一套调度算法,用于管理从操作系统获取的资源,主要是对内存和CPU资源的调度.一个好的数据库系统,必定在内存中缓 ...
- QML 从无到有 3 (自动更新)
新的需求出来啦,需要自动更新功能,不怕程序升级了. 自动更新,QML不好写,需要c++来辅助,这里就涉及QML中调用c++功能(这里就不写了,百度一下,很多). 思路:获取版本>下载程序> ...
随机推荐
- Backward Digit Sums(暴力)
Backward Digit Sums Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5664 Accepted: 32 ...
- Android应用中使用百度地图API定位自己的位置(二)
官方文档:http://developer.baidu.com/map/sdkandev-6.htm#.E7.AE.80.E4.BB.8B3 百度地图SDK为开发人员们提供了例如以下类型的地图覆盖物: ...
- 【Android Tricks 6】ViewPager首页与尾页的滑动动作响应
ViewPager能够说是Android应用中使用比較广发的一个组件了.它能够帮助我们非常 方便地实现滑动更换View的效果.刚好近期搞的一个项目有一个需求用到了这个,同 时是要能在首页和尾页滑动时可 ...
- Java线程之二 锁定与等待堵塞原理图
如上图所看到的.
- Java设计模式--------建造者模式(Builder模式)
Builder模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构 ...
- C#格式化成小数
datagridview某列格式化成两位小数 ............................................................................. ...
- 3.C#/.NET编程中的常见异常(持续更新)
1.Object reference not set to an instance of an object. 未将对象引用(引用)到对象的实例,说白了就是有个对象为null,但是你在用它点出来的各种 ...
- sql server 存储过程分隔split
CREATE FUNCTION [dbo].[F_split] ( ), ) ) , ), f )) --实现split功能 的函数 AS BEGIN DECLARE @i INT SET @Sour ...
- FPGA开发(3)
转载 榨干FPGA片上存储资源 记得Long long time ago,特权同学写过一篇简短的博文<M4K使用率>,文章中提到了Cyclone器件的内嵌存储块M4K的配置问题.文中提到了 ...
- VC/MFC使用OLE操作 EXCEL
1.VC插入sheet页到指定位置 插入sheet的函数用 sheets.Add(Before, After,Count,Type) 四个参数含义如下: 四个const VARIANT: ...