QML笔记(一):学习中个人心得

最近在学习qt自带的一种叫QML,没有听说过,在深入了解之后,发现它的功能太强大了,我大致总结了以下几点,也把我个人的学习经验和总结,分享出来。
一:为什么要使用Qml?

1、QML 是一种声明性语言,允许根据用户界面的可视组件以及它们如何相互交互和相互关联来描述用户界面。QML 是一种高度可读的语言,旨在使组件能够以动态方式互连,并且允许组件在用户界面中轻松重复使用和自定义。

2、可以轻松地在 QML 中构建流体动画用户界面,并且可以选择将这些用户界面连接到任何后端 C++ 库。

3、可以动态生成界面,更改qml组件内容,不需要重新编译程序,直接运行原程序就可以

4、QML发展日益完善,取代原始的qt框架成为一种趋势,整体开发体检较为现代

5、可以两端可同时开发(界面和业务逻辑),增加开发进度

二:qml 跟C++ 的交互方式

1,可以直接在C++应用程序中加载qml文件,拿到界面各元素的指针,修改界面属性。这种方式跟xrc文件类似

2,可以将C++对象expose 到qml中,然后在qml文件中访问该对象的属性或调用对象的方法

3,可以自定义C++类,把该类注册给qml类型系统,然后可以像其他内置类型那样在qml中使用

三:优点

1、界面与逻辑完美分离:用QML来定义界面,用C++来实现界面的响应逻辑。

2、通常的做法是,当用户在界面上操作的时候,我们从qml文件里面调用C++的响应函数

3、应用MVC方便:用QML来描绘界面(View),用C++代码来实现Model 和 Controller。

4、自定义控件容易:可以用C++来自定义自己的QML类型, 然后将它应用于我们的应用程序中。

你可能感兴趣的:(QML,qt,mvc,开发语言)