QT 的不同开发方式

[TOC]

QT的简要介绍

  • 用类套壳的UI库,同时还提供了一些IDE,UI编辑工具等。

  • 同时QT的库中还有3D,图像处理,SQL数据库,音频处理,多线程等多个库,可以替代opencv,opengl做一些开发。

  • 可以开发多个平台的软件,同时可以实现在一个平台开发后可以用于其他平台,平台包括安卓,嵌入式,桌面开发

QT Creator-QT提供的IDE

Qt Creator 是 Qt 官方提供的集成开发环境(IDE),支持多种开发方式。

  • 多语言支持:支持 C++、QML、Python 等语言。
  • 集成工具:包含代码编辑器、调试器、UI 设计器、版本控制等功能。
  • 跨平台:支持 Windows、Linux、macOS。

QT Designer-QT提供的UI编辑器

Qt Designer 是一个可视化工具,用于设计 Qt 应用程序的用户界面。它生成 .ui 文件,可以与 C++、Python 等语言结合使用。

  • 拖拽式设计:通过拖拽控件快速构建 UI。
  • 生成 .ui 文件.ui 文件是 XML 格式的界面描述文件,可以在代码中动态加载。
  • 与代码结合:通过 uic 工具将 .ui 文件转换为 C++ 或 Python 代码。

C++开发方式

Qt 最传统和强大的开发方式,使用 C++ 语言直接调用 Qt 的 API。

开发工具可以使用如下:

  • Qt Creator(最好的方法):Qt 官方提供的集成开发环境(IDE),支持代码编辑、调试、UI 设计等功能。
  • Qt Designer:用于设计 GUI 界面,生成 .ui 文件,可以与 C++ 代码结合使用,用Designer生成ui文件之后使用其他C++的IDE调用ui中的每个模块编写功能实现,最后合到一起。

Python开发方式

Pyqt

提供了完整的 Qt 模块支持。

pyQT的安装不需要在官网下载QT安装包,只需要创建conda环境然后pip安装,安装pyQT5-tools之后会安装QT designer,然后就可以可视化设计一个UI,然后通过Pyuic工具就可以转化为一个py文件,这个py文件就是整个工程,py文件中有一个class包含了整个UI设计,然后只需要编辑py文件中这个class的功能即可,编辑子函数。

开发工具可以使用如下:

  • Qt Designer:用于设计 UI,生成 .ui 文件,可以通过 PyQt 或 PySide 加载。
  • Qt Creator:支持 Python 项目的开发。
  • 第三方 IDE:如 PyCharm、VS Code 等。

PySide

与 PyQt 类似,但 API 更接近原生 Qt。

QML(Qt Meta-Object Language)

QML 是一种声明式语言,用于设计用户界面,与 JavaScript 结合使用,适合开发现代化的、动态的 UI。为了适应手机移动应用开发, Qt5 将 QML 脚本编程提到与传统 C++ 部件编程相同的高度,力推 QML 界面编程,当然 QML 主要用于手机移动应用程序。 QML 包含大量使用手机移动设备的功能模块,比如基本部件(QtQuick 模块)、GPS 定位、渲染特效、蓝牙、NFC、WebkKit 等等。
QML 类似于网页设计的 HTML,是一种标记语言,我们可以借助 CSS 对它进行美化,也可以借助 JavaScript 进行交互。有 Web 开发经验的读者学习 QML 将非常轻松。

以下两个特点很重要

  • 与 C++ 结合:QML 可以与 C++ 后端逻辑结合,实现复杂的业务逻辑。

  • 动画和特效:QML 内置了对动画和特效的支持,适合开发动态界面。可以实现富动画和特效的应用程序。

  • 适用移动应用程序(如 Android、iOS)

开发工具可以使用如下:

  • Qt Creator(最好的方法):Qt 官方提供的集成开发环境(IDE),支持代码编辑、调试、UI 设计等功能。
  • Qt Quick Designer:用于设计 QML 界面。