本页内容

Qt Quick 工具与实用程序

Qt 提供了多种工具和实用程序,旨在为开发者(尤其是Qt Quick 开发者)提供丰富的开发体验。以下各节将简要介绍这些工具和实用程序,并提供相关详细信息的链接。

Qt Creator

该 Qt Creator IDE是提升使用Qt XML和Qt Quick 开发体验的关键工具。其针对Qt Quick 提供的编辑、格式化、性能分析及调试功能,使Qt Quick 的开发工作更加轻松。

Qt Extension for Visual Studio Code

Qt Extension for Visual Studio Code 为Visual Studio Code中的Qt Quick 提供编辑、格式化、性能分析和调试功能,并支持Windows、Linux和macOS系统。

Qt Design Studio

Qt Design Studio 支持使用大多数设计师都熟悉的简单拖放操作来设计基于Qt Quick 的用户界面。它提供了来自Qt Quick 和Qt Quick Controls 模块的用户界面元素,并支持集成自定义用户界面元素。

Qt Quick Effect Maker (QQEM)

Qt Quick Effect Maker 是一款用于为Qt Quick 创建着色器效果的工具,具有高生产力和高性能。您可以将Qt Quick Effect Maker 作为独立工具运行。

QML 调试

Qt Quick 调试功能支持:

  • 调试 JavaScript 函数,
  • 执行 JavaScript 表达式,
  • 以及检查 QML 属性。

QML 调试器是Qt Creator 和Qt Design Studio 两个网站共同提供的功能。

QML Profiler

该 QML Profiler 可帮助您获取必要的诊断信息,从而分析应用程序代码中的性能问题。例如,每个帧中的 JavaScript 代码过多、C++ 函数运行时间过长等。

该分析器是Qt Creator 和Qt Design Studio 的组成部分。

Felgo QML 热重载

Felgo QML 热重载是一款第三方工具,可在不需每次修改后重新编译和重新部署的情况下,更新运行中应用程序的 QML 和 JavaScript 代码。 与 Live Reload 不同,它在重新加载后会保留应用程序的当前状态,并且可以同时在多台设备上运行,以便测试和迭代代码。Felgo Hot Reload 支持所有 Qt 目标平台和架构。

GammaRay

GammaRay是一款有用的工具,可提供有关应用程序的诊断信息。它与前一节中描述的“QML Profiler ”类似,但功能更为丰富。 例如,创建的项目或 QObject 的数量、执行的函数调用、每次函数调用所花费的时间、运行时的属性值内省等。这些信息非常有用,特别是在调试 QML 应用程序时。

Squish

Squish是一款广为人知的测试工具,它通过记录您的操作或运行脚本来实现 UI 测试的自动化。一旦测试设置完成,运行 UI 测试就会变得容易得多。

qmllint 工具

qmllint是 Qt 自带的一款工具,用于验证 QML 文件的语法正确性。它还会对某些 QML 反模式发出警告。若需禁用特定类型的警告,可在命令行中添加 `--help ` 参数,从而找到相应的设置选项。

qmlformat

qmlformat是一款根据《QML 编码规范》自动格式化 QML 文件的工具。

Qt Quick Compiler

Qt Quick Compiler 由两个组件构成:

QML Language Server 工具

QML Language Server 是 Qt 随附的一款工具,可帮助您在喜爱的(兼容 LSP 的)编辑器中编辑 QML 代码。

SVG 到 QML 转换器 [技术预览]

svgtoqml工具可将 SVG 文档转换为 QML 文件,该文件可作为组件使用。

© 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.