1. Hello Qt 窗口
任务目标
创建一个显示“Hello Qt”文本的最小Qt窗口应用程序,通过该案例熟悉Qt项目的基本文件结构、QApplication事件循环以及QLabel控件的使用。
环境依赖
- Qt 5.15 或 Qt 6.x(本案例代码兼容两个版本)
- 编译器:支持 C++11 或更高版本(如 GCC、MinGW、MSVC)
- 构建工具:qmake 或 CMake(本案例使用 qmake)
项目结构
一个最小Qt Widgets项目需要以下三个文件:
HelloQt/
├── HelloQt.pro # qmake 项目文件
├── main.cpp # 程序入口
└── mainwindow.h # 窗口类声明(可选,本案例直接使用 QLabel 简化)
完整实现代码
本案例采用最小实现:直接在 main.cpp 中创建 QLabel 作为中央控件,不额外定义窗口子类,以最少的代码完成目标。
// main.cpp
#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建标签控件并设置显示文本
QLabel label("Hello Qt");
label.setAlignment(Qt::AlignCenter); // 文本居中显示
label.resize(320, 200); // 设置窗口初始大小
label.show(); // 显示窗口
return app.exec(); // 进入事件循环
}
# HelloQt.pro
QT += widgets
SOURCES += main.cpp
TARGET = HelloQt
运行方式
- 将上述两个文件保存至同一目录(如
HelloQt/)。 - 在终端进入该目录,依次执行:
qmake
make # Windows 下若使用 MinGW 则为 mingw32-make
- 运行生成的可执行文件:
./HelloQt # Linux/macOS
HelloQt.exe # Windows
验证方法
- 程序启动后应弹出一个窗口,标题栏为空(默认),窗口中央显示黑色文本“Hello Qt”。
- 窗口大小约为 320×200 像素,文本水平垂直居中。
- 点击窗口关闭按钮后,程序正常退出,终端无报错信息。
满足以上三点即可判定案例通过。
关键说明
QApplication管理GUI程序的控制流和主要设置,每个Qt Widgets程序有且仅有一个实例。app.exec()进入事件循环,阻塞直到窗口关闭,保证窗口持续响应。QLabel是最基础的显示控件,此处直接作为顶层窗口使用;实际项目中通常使用QMainWindow作为主窗口容器。- 若使用Qt 6,无需修改代码;若使用Qt 5,需确保项目文件中包含
QT += widgets。