Scripting
Qt 具有三种主要方法, 使应用程序可以执行脚本. 这些方法都允许将 ECMAScript (更广泛地称为 JavaScript) 语言轻松集成到应用程序中. 根据集成的深度不同, 可以使用以下 API 之一:
Qt Script Module
Qt Script 是一个独立的模块,设计时考虑了脚本应用程序。 它拥有成熟且丰富的 API,可以真正深度集成脚本功能。 它允许评估和调试脚本,以及对象和函数的高级使用。 它还允许访问真正低级的 ECMAScript 引擎 API. 详见 Qt JavaScript.
JS API
这是一个简单的 API, 与 Qt Script 非常类似, 但仅限于基本功能. 主要的类是 QJSEngine 和 QJSValue, 它们可用于嵌入纯 ECMAScript 功能, 例如评估脚本和调用函数.
QML
QML 集成并修改 ECMAScript 环境. 它旨在与前面提到的 JavaScript API 很好地混合. QML 可以在没有 Qt Quick 组件的情况下使用, 这对于服务器端脚本编写可能很有用. 使用 QML, 可以混合纯 ECMAScript 和声明性组件 (Use Case - Integrating JavaScript in QML).
所有这三个脚本解决方案都与 the Meta-Object System 无缝地互操作, 这意味着 QObject 实例的所有信号, 槽函数和属性都可以在 ECMAScript 环境中访问.