zoukankan      html  css  js  c++  java
  • 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 delegatescacheBuffer 设定一定的值(根据具体情况选择大小), 把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

     

  • 相关阅读:
    OCR中表格识别及WORD生成
    太阳能跟踪系统
    QA300太阳能移动电源
    OCR之表格识别
    2012112
    2012123
    2012121
    2011101
    201191
    2011828
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3150407.html
Copyright © 2011-2022 走看看