1. PyQt6 入门:为什么选择它来开发 GUI?
如果你曾经用 Python 的 tkinter 尝试过图形界面开发,可能会觉得做出来的界面总是不够精致。PyQt6 作为 Python 中最强大的 GUI 库之一,完美解决了这个问题。它基于 Qt 框架,提供了丰富的控件和高度可定制化的界面设计能力,能够轻松实现专业级的桌面应用界面。
在实际开发中,需要实现复杂的交互界面时,tkinter 往往无法满足需求。切换到 PyQt6 后,不仅界面美观度大幅提升,开发效率也提高了不少。PyQt6 最大的优势在于它提供了 Qt Designer 这个可视化设计工具,让你可以通过拖拽方式快速搭建界面,再配合 Python 代码实现业务逻辑。
安装 PyQt6 非常简单,只需要一条 pip 命令:
pip install PyQt6
如果你想要使用 Qt Designer 工具,还需要安装:
pip install pyqt6-tools
安装完成后,可以通过以下代码测试是否安装成功:
from PyQt6.QtWidgets import QApplication, QLabel
app = QApplication([])
label = QLabel("Hello PyQt6!")
label.show()
app.exec()
2. 快速搭建第一个 PyQt6 窗口
2.1 基础窗口模板解析
PyQt6 的核心是 QApplication 和 QWidget 这两个类。QApplication 管理应用程序的主事件循环,而 QWidget 则是所有用户界面对象的基类。下面是一个最基本的窗口模板:
import sys
from PyQt6.QtWidgets import QApplication, QWidget
app = QApplication(sys.argv)
window = QWidget()
window.setWindowTitle("我的第一个 PyQt6 窗口")
window.resize(400, 300)
window.show()
sys.exit(app.exec())
这个模板虽然简单,但包含了 PyQt6 程序的基本结构。建议把这个模板保存下来,作为所有 PyQt6 项目的起点。在实际开发中,我们通常会创建一个继承自 QWidget 的自定义类,这样代码组织会更清晰:
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("自定义窗口")
self.show()

