什么是QML?
QML是一种用户界面规范和编程语言。它使开发人员和设计师都可以创建高性能,流畅的动画和吸引人的应用程序。QML提供了一种高度可读的,声明性的,类似于JSON的语法,并支持将命令性JavaScript表达式与动态属性绑定结合在一起。
QML是一种声明性语言,它允许根据用户界面的视觉组件以及它们之间的交互方式和相互关系来描述用户界面。它是一种高度可读的语言,旨在使组件能够以动态方式互连,并且允许在用户界面内轻松地重用和自定义组件。使用该QtQuick模块,设计人员和开发人员可以轻松地在QML中构建流畅的动画用户界面,并可以选择将这些用户界面连接到任何后端C ++库。
-
下面我们来新建一个QML的工程,我们先来新建一个项目,然后选择Application项目中的第三个:
-
然后下一步名称路径啥的按自己修改就可以了,下一步下一步完成即可。新建完成后就会生成下列的文件:
创建成功后,启动之后发现,它有一个可以编辑文本框,而且点击背景的时候还会输出文本框内的内容,那么这些在哪里来的呢?
这个文本框呢,是在ManForm.ui.qml里面的,在创建这个QML的时候就自动生成了。
然后我们再看看main.qml里面写了什么
MainForm {
anchors.fill: parent
mouseArea.onClicked: {
console.log(qsTr('Clicked on background. Text: "' + textEdit.text + '"'))
}
}
这段代码呢,就实现了鼠标点击背景就会输出文本框的内容。
我们再来看看main.cpp里面写了什么
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;// 这个是QML引擎
engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); // 加载QML文件
return app.exec();
}
到这里,一个简单的QML的项目就创建成功啦