QML

编辑:浦口网互动百科 时间:2020-07-05 04:19:43
编辑 锁定
QML是一种描述性的脚本语言,文件格式以.qml结尾。语法格式非常像CSS(参考后文具体例子),但又支持javascript形式的编程控制。我个人认为它结合了QtDesigner UI和QtScript的优点。QtDesigner可以设计出·ui界面文件,但是不支持和Qt原生C++代码的交互。QtScript可以和Qt原生代码进行交互,但是有一个缺点,如果要在脚本中创建一个继承于QObject的图形对象非常不方便,只能在Qt代码中创建图形对象,然后从QtScript中进行访问。而QML可以在脚本里创建图形对象,并且支持各种图形特效,以及状态机等,同时又能跟Qt写的C++代码进行方便的交互,使用起来非常方便。
外文名
QML
性    质
脚本语言
文件格式
以.qml结尾
支    持
javascript形式的编程控制

目录

QML来源

编辑
QML是Qt推出的Qt Quick技术的一部分,是一种新增的简便易学的语言。QML是一种陈述性语言,用来描述一个程序的用户界面:无论是什么样子,以及它如何表现。在QML,一个用户界面被指定为具有属性的对象树。 这使得Qt更加便于很少或没有编程经验的人使用。
QML实际上是Qt Quick (Qt4.7.0中的新特性)核心组件之一:Qt Quick是一组旨在帮助开发者创建在移动电话,媒体播放器,机顶盒和其他便携设备上使用越来越多的直观、现代、流畅UI的工具集合。

QML举例

编辑
JavaScript在QML中作为一种脚本语言,对QML进行逻辑方面的编程。例如:
Rectangle {
id: rect
color: "black"
// following italic type code is javascript
function fun() {
if(rect.color == "black") {
rect.color = "red"
}
else {
rect.color = "black"
}
}
.....
MouseArea {
id: mouse
onClicked: {
fun()
}
}
.....
}
上面斜体代码就是javascript,意思是,当方块颜色是黑色的时候点击就变红,反之变黑。你可能想先多了解一下JavaScript,然后再深入学习QML, 而对类似于HTML和CSS等网络技术有一些基本理解也是有用的。但它们都不是必需的。
词条标签:
计算机学