- QML Applications -- QML应用程序
QML是一种声明式语言。它提供了一组接口用来描写叙述可视化组件以及他们呢之间的互动。它是一个高度可读的语言,而且呗设计成使组件以一个动态的方式相互连接。
- QML是一个用户接口规范和编程语言
它同意开发人员和设计者创建高性能的。流畅的动画和视觉效果的应用。QML提供了一个高度可读的。声明式的,相似JSON语法的。并支持与JavaScript表达式相结合来达到动态属性的绑定。
- QML的层次结构
QML是一个树形结构,最外层必须是根元素,根元素里面可以嵌套一个或多个子元素,子元素里面还可以包含子元素。
- 属性绑定
所谓属性绑定,就是给属性赋值,不过有多种赋值方式,最简单的就是绑定到一个数字,也可以绑定到一个表达式,甚至绑定到一个代码块或者一个函数
- QML的信号和信号处理
QML中使用On+信号的方式作为信号处理器,来处理所发送的信号
Button {
text: '退出'
anchors.centerIn: parent
onClicked: {
Qt.quit()
}
}
- QML的布局定位器
在QML中拥有布局定位器Row/Column/Grid/Flow,用法也不复杂
- QML复用
QML中最重要的概念之一就是类型的服用,一个应用程序可能含有多个相同的可视类型,同时QML允许这类失误可服用、定制,以减小大妈重复性并提高可读性
- QML中的state
state就是定义一个状态,包含的属性有这个状态的名字name,以及一些在这个状态下的一些目标对象的相关状态
- QML的transition
states: State {
name: "down"; when: mouseArea.pressed == true
PropertyChanges { target: helloText; y: 160; rotation: 180; color: "red" }
}
transitions: Transition {
from: ""; to: "down"; reversible: true
ParallelAnimation {
NumberAnimation { properties: "y,rotation"; duration: 500; easing.type: Easing.InOutQuad }
ColorAnimation { duration: 500 }
}
}
重点看以下from,to,表示状态变化