Qt for C++: 完整指南与示例

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

这是什么库以及为什么需要它



Qt 是一个用于 C++ 应用程序开发的强大跨平台框架。它允许您创建图形界面 (GUI)、控制台工具、网络应用程序、多媒体程序等。Qt 将开发人员与操作系统的具体细节隔离开来,为 Windows、macOS、Linux、Android 和 iOS 提供统一的 API。



为什么需要 Qt?

  • 跨平台性: 同一代码无需修改即可在不同的操作系统上运行。
  • 丰富的生态系统: 包括用于数据库 (Qt SQL)、网络 (Qt Network)、Web 引擎 (Qt WebEngine)、多媒体 (Qt Multimedia)、3D 图形 (Qt 3D) 等的模块。
  • 性能: 使用 C++ 编写,确保高执行速度。
  • 信号与槽系统: 用于连接对象和处理事件的独特机制。
  • 现成的小部件: 按钮、表格、树形控件、文本编辑器、对话框等。
  • 开发工具: Qt Creator——带有可视化表单编辑器的 IDE。


Qt 被用于诸如 KDE(Linux 桌面环境)、Telegram Desktop、VirtualBox、Autodesk Maya、VLC Media Player 等众多项目中。



安装



与解释型语言(Python、JavaScript)不同,Qt for C++ 不能通过 pip install 或 npm install 安装。它是一个原生库,需要编译和项目配置。



方法 1:通过官方安装程序安装(推荐)

  1. 访问 Qt 官方网站。
  2. 为您的操作系统下载 Qt Online Installer。
  3. 运行安装程序并登录您的账户(或创建一个免费账户)。
  4. 选择 Qt 版本(例如 Qt 6.5.3)和组件:
    • Qt (Desktop) —— 用于桌面应用程序。
    • Qt Creator —— IDE。
    • 编译器(Windows 上的 MinGW,Linux/macOS 上的 GCC/Clang)。
  5. 完成安装。


方法 2:通过包管理器安装(Linux/macOS)

Ubuntu/Debian:

sudo apt updatesudo apt install qt6-base-dev qt6-tools-dev qtcreator


macOS (Homebrew):

brew install qt@6brew install qt-creator


Windows (vcpkg):

vcpkg install qt6


方法 3:CMake + FetchContent(用于项目)

如果您使用 CMake,可以自动下载 Qt:

include(FetchContent)FetchContent_Declare(qt6    GIT_REPOSITORY https://github.com/qt/qt6.git    GIT_TAG v6.5.3)FetchContent_MakeAvailable(qt6)


快速入门与代码示例



让我们创建一个带有关闭应用程序按钮的简单窗口。



步骤 1:创建文件 main.cpp

#include <QApplication>#include <QPushButton>

int main(int argc, char *argv[]) { QApplication app(argc, argv);

QPushButton button("关闭应用程序"); button.resize(200, 100); button.show();

// 将按钮的 clicked() 信号连接到应用程序的 quit() 槽 QObject::connect(&button, &QPushButton::clicked, &app, &QApplication::quit);

return app.exec();}


步骤 2:创建文件 CMakeLists.txt

cmake_minimum_required(VERSION 3.16)project(MyFirstQtApp)

set(CMAKE_CXX_STANDARD 17)set(CMAKE_AUTOMOC ON)

find_package(Qt6 REQUIRED COMPONENTS Widgets)

add_executable(MyFirstQtApp main.cpp)

target_link_libraries(MyFirstQtApp Qt6::Widgets)


步骤 3:构

推荐