qml开发

发布于 2020-11-08  302 次阅读


综述

qt qml 模块提供了基于 QML 语言的 库与应用开发框架。它定义了语言和引擎件,提供了一套 API 使得开发者可以通过自定义的类型和在 JavaScript 以及 C++ 中集成 QML 代码的方式扩展 QML。 qt qml 模块同时提供了 QML API 和 C++ API。
qt quick 模块提供了许多 可视化组件, model-view 支持,动画框架,以及许多其他用户接口。

详细内容

快速开始

使用 qml 模块,在 pro 中添加

QT += qml

在 C++ 中添加

#include <QtQml>

在 qml 中添加

import QtQml 2.15

QML 以及 QML 类型

QML 是 多范式(multi-paradigm)语言。QML 语法包括 JavaScript。Qt 的特性可以在 qml 中访问。

QML 符号基础

import <ModuleIdentifier> <Version.Number> [as <Qualifier>]

import QtQuick 2.0 as quick
quick.Rectangle{
    width:200
    height:100
    color:"red"
}

C++ 模块引入

C++ 类型使用 QML_ELEMENT 以及 QML_NAMED_ELEMENT() 宏进行声明,通过 QML_IMPORT_NAME 和 QML_IMPORT_MAJOR_VERSION 在构造系统注册。

class Slider:public QObject
{
    Q_OBJECT
    QML_ELEMENT
}

在 pro 中添加 如下内容注册到构造系统:

CONFIG += qmltypes
QML_IMPORT_NAME = com.mycompany.qmlcomponents
QML_IMPORT_MAJOR_VERSION = 1

使用时

import com.mycompany.qmlcomponents 1.0

Slider{
    
}

朝闻道,夕死可矣