❝Qt Quick第一版从Qt 4.7发布,设计初衷是适用于移动设备。但经过不断地更新,Qt Quick技术适用的范围更广,一直也是如此。对于Qt这个技术框架,Qt Quick是Qt的未来也不为过。 ❞
Qt Quick提供了一种称为QML的声明式语言,但我们大多数将Qt Quick称为QML(Qt Meta-Object Language: Qt元对象语言)。QML是基于CSS和JavaScript。如「一个窗口在QML代码中的表示为」:
Window {
width: 100
height: 100
title: "Hello world!"
onClicked: {
// 点击窗口事件。
width += 50
height += 50
}
}
QML代码大多都CSS样式类似的名称:值
的形式(如:width: 100
)。而行为(事件)部分由JavaScript代码编写(如:width += 50
)
Qt君认为,面向对象思想天生适用于界面编程。而QML描述性语言是面向对象思想的一种很好的体现。比如:
Window {
Text {
text: "Hello world!"
}
Text {
text: "Qt"
}
}
似乎在第一次接触到QML代码时都会觉得很奇怪甚至是抵触,和我们C++语法完全不一样,以致于一部分人接受不了。事实上当你用过了,你会觉得QML在做UI界面实在好用太多了。相对于Qt传统的界面,QML开发更快更易的UI,但我们不容忽略的是,Qt传统界面稳定性好的优势。