day01:认识 QApplication 与 QLabel
1. PyQt6 是什么?
-
Qt:一个跨平台的 C++ GUI 框架,历史悠久,应用广泛(Photoshop、WPS、VirtualBox 都是基于 Qt)。
-
PyQt6:Qt 的 Python 绑定,让你用 Python 就能写出专业级的桌面应用,而不必学习 C++。
-
竞争对手:PySide6(Qt 官方的 Python 绑定),用法几乎一样。选择哪一个都行。
2. Qt 应用的基本结构
一个最简单的 PyQt 程序包含三部分:
-
QApplication:应用对象,整个程序必须有且只有一个。它管理事件循环(监听鼠标、键盘、窗口关闭等)。
-
控件(QWidget 及其子类):界面上的元素,比如窗口、标签、按钮。
-
事件循环:程序常驻运行,等待用户操作。调用
app.exec()开始。
3. QLabel 控件
-
QLabel:用于显示一段文本或图片,是 Qt 里最轻量级的控件。
-
QLabel 既可以嵌在窗口中作为子控件,也可以单独显示(直接当成窗口)。
-
常见用途:显示文字、显示图片、作为提示标签。
常用方法:
-
setText("内容")→ 设置文本内容 -
setPixmap(QPixmap("图片路径"))→ 显示图片 -
setAlignment(Qt.AlignmentFlag.AlignCenter)→ 设置对齐方式 -
setStyleSheet("CSS语法")→ 设置样式(类似网页的 CSS)
4. 代码演练:
from PyQt6.QtWidgets import QApplication, QLabel
# 创建 Qt 应用对象,必须有且只有一个
app = QApplication([])
# QLabel:显示一段文字的控件
label = QLabel("Hello, PyQt6")
label.setWindowTitle("Day 1 - 最小窗口") # 设置窗口标题
label.resize(300, 100) # 设置窗口大小
label.show() # 显示控件(此时它就是一个窗口)
# 启动事件循环,等待用户操作
app.exec()
👉 运行结果:出现一个 300×100 的小窗口,里面写着 "Hello, PyQt6"。

5. QLabel 的进阶玩法
我们稍微扩展一下,让你感受 QLabel 的多样性。
import sys
from PyQt6.QtWidgets import QApplication, QLabel
from PyQt6.QtCore import Qt
from PyQt6.QtGui import QPixmap
app = QApplication(sys.argv)
# 文本标签
label1 = QLabel("Hello, PyQt6!")
label1.setWindowTitle("Day 01 - 最小窗口")
label1.setAlignment(Qt.AlignmentFlag.AlignCenter)
label1.resize(300, 100)
label1.show()
# 图片标签
label2 = QLabel()
label2.setWindowTitle("Day 01 - 图片标签")
label2.setPixmap(QPixmap("../img/test.png"))
label2.resize(300, 200)
label2.show()
# html标签
label3 = QLabel("<h2 style='color:blue'>Hello, PyQt6!</h2><p>支持html!</p>")
label3.setWindowTitle("Day 01 - html标签")
label3.resize(300, 150)
label3.show()
# 进入事件循环
sys.exit(app.exec())
👉 运行结果:
-
第一个窗口显示普通文本。
-
第二个窗口显示图片。
-
第三个窗口显示 HTML 样式化的文字。

6. 小结
今天你学到:
-
QApplication:Qt 程序的入口,负责事件循环。
-
QLabel:最基础的显示控件,可以显示文本、图片、HTML。
-
窗口基本属性:标题 (
setWindowTitle)、大小 (resize)、显示 (show)。
到这里,你已经能写出最小的 PyQt 程序,并且用 QLabel 显示多种内容了。
您的资助是我最大的动力!
金额随意,欢迎来赏!

浙公网安备 33010602011771号