注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

沙漠里de烟雨

原创分享,禁止转载

 
 
 

日志

 
 

qt gui 与 qml 的比较  

2017-06-08 03:43:40|  分类: QT5.x与QML |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1) qt gui 如QWidget,QMainWindow等窗口是基于软件栅格方式渲染的,而qml的可视窗体是基于openGL,这两种本质的区别,故而qml写的窗体可以嵌入到qt gui中(如用QQuickWidget等),而反过来则不可行。如果要通过qml来控制qt gui写的窗体的创建与布局,可以通过一个QObject对象(通过嵌入至qml)实现 qml 与qt gui的交互。
2)qml 中写的父子窗体若均想获取鼠标消息,如MouseArea中的鼠标经过消息,在它们的重合区域中,子窗体的消息会被父窗体拦截,故一般只在父窗体中使用MouseArea,然后通过鼠标位置来定位是否在子窗体区域,并做相应的处理。而在qt gui中,由于消息是逐级传递的,所以默认不会拦截子窗体/控件的消息,这点在处理鼠标经过时的控件状态变化时尤其有效。
3)qml有一非常好有的机制就是属性绑定,这点在数据与控件状态同步时非常方便。然它处理诸如树控件等这些复杂的控件时却显得有些力不从心。所以qt gui与qml 在界面方便是可以优势互补的,它们各有千秋。
4)在移动app上,用qml比用Qt gui做界面更稳定可靠性。用qt gui写的界面,在android或ios手机中界面可能让你大跌眼镜,与pc上所呈现的有很大差异,所以推荐用qml来做移动app的开发更好些,况且由于属性的绑定特性,更方便实时让业务状态与界面状态实现同步。
5)qml 以脚本为存在,所以可以在编译后仍可更改应用的界面与相关的业务逻辑。
  评论这张
 
阅读(44)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017