Qt 编程语言
Qt API 采用 C++ 实现,并提供了额外功能以简化跨平台开发。 Qt 支持 QML(其基于 JavaScript 构建的自有声明式语言)以及Qt Quick ——一个基于 QML 构建的框架。它旨在描述程序的用户界面:其外观和行为方式。作为 C++ 的替代方案,Python 提供了 Qt 绑定库,即 Qt for Python。
C++
Qt 框架包含一套全面、高度直观且模块化的 C++ 库类,并配备了丰富的 API 以简化您的应用程序开发。Qt 提供了一个直观的 C++ 类库,其中包含丰富的应用程序构建模块,用于 C++ 开发,并为 C++ 增添了以下功能:
- 一种名为“信号与槽”的强大机制,可实现对象之间的无缝通信
- 可查询且可设计的对象属性
- 强大的事件和事件过滤器
- 用于国际化的上下文字符串翻译
- 功能强大的间隔驱动定时器,可将众多任务优雅地集成到事件驱动的图形用户界面中
- 分层且可查询的对象树,能以自然的方式组织对象所有权
- 可在不同库之间通用的动态类型转换
- 支持将自定义类型集成到 Qt 元类型系统中
QML
Qt Qml 提供了一个基于QML语言开发应用程序和库的框架。它定义并实现了该语言及引擎的基础架构,并提供了一个API,用于通过自定义类型启用和扩展QML语言,以及将QML代码与JavaScript和C++集成。Qt Qml 模块同时提供了QML API 和C++ API 。
该 Qt Qml 模块为 QML 应用程序提供了语言和基础设施。该 Qt Quick 模块提供了许多可视化组件、模型-视图支持、动画框架以及用于构建用户界面的其他诸多功能。
QML 语言允许您使用类似 JSON 的语法定义对象树,还允许您使用 JavaScript 实现逻辑。
QML 应用程序中的 JavaScript
JavaScript 表达式使 QML 代码能够包含应用程序逻辑。Qt Qml 提供了一个框架,用于在 QML 中以及从 C++ 运行 JavaScript 表达式。它支持:
- 用户界面和应用逻辑的快速开发。
- QML 提供的JavaScript 主机环境,可运行符合标准第 7 版规范的有效 JavaScript 代码,以及后续标准中的一些扩展。
- 从 JavaScript 内部动态创建对象。这有助于将对象的实例化推迟到必要时,从而提高应用程序的启动速度。
Qt for Python
Qt for Python 提供 Qt 的官方 Python 绑定,使您能够使用 Python 编写 Qt 应用程序。该项目包含以下组件:
- PySide6:Qt 6 的官方 Python 绑定
- Shiboken6:一个绑定生成工具,用于将 C++ 代码暴露给 Python
- 工具集:旨在简化使用 PySide6 进行应用程序开发的过程
- Shiboken 模块:提供用于调试的实用函数
相关内容
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.