用途:用 PyQt6 或 PySide6 构建跨平台桌面应用的技能枢纽,提供安装、项目结构、信号与槽基础,并把具体主题路由到各子技能。
主要能力与子技能:pyqt-core(信号、槽、定时器、设置、文件 I/O)、pyqt-widgets(控件与布局)、pyqt-threading(QThread、线程池、并发)、pyqt-dialogs(标准与自定义对话框)、pyqt-testing(pytest-qt 测试模式)、pyqt-styling(QSS 样式与主题)、pyqt-multimedia(音频、视频、摄像头、录制)。
安装:pip install PySide6;pip install PyQt6;PyQt5(旧版)pip install PyQt5。Ubuntu/Debian 可执行 sudo apt install libgl1-mesa-glx libglib2.0-0,Fedora 用 sudo dnf install mesa-libGL glib2,Arch 用 sudo pacman -S mesa glib2。
选型:PySide6 为 LGPL,官方 Qt 支持;PyQt6 为 GPL 且需商业授权;PyQt5 仅安全维护。
架构选择:MVC 适合简单数据展示与内联编辑,验证放在模型的 setData();MVVM 适合同一数据多控件不同格式展示或复杂 UI 状态,格式化与验证放在 ViewModel。仅在单一数据源、无复杂派生状态时,信号与槽已足够。
打包:可使用 PyInstaller(pyinstaller --onefile --windowed app.py)或 cx_Freeze(python setup.py build)。
适用场景:跨平台桌面 GUI 应用开发、线程化后台任务、表格/列表视图、对话框、样式定制、pytest-qt 测试与分发打包。
限制:本枢纽只做路由,信号与槽基础、控件列表、QSS 语法与布局代码等具体内容位于相应子技能;PyQt 商业使用需授权;PyQt5 仅安全修复;图形系统依赖与打包细节需按目标平台验证。