SuperAPI AI 工具集

pyqt6-ui-development-rules

编程与开发

查看项目

更新于 10-16 07:25

技能介绍

用途:该技能为构建生产级 PyQt6 桌面应用提供规则约束,核心原则是严格通过信号/槽实现 MVC 分离、绝不阻塞 UI 线程、在 QApplication 层集中管理 QSS 主题、使用布局管理器实现响应式设计。适用于新建 PyQt6 应用、将 PyQt/PySide 代码重构为 PyQt6、调试卡死或无响应的 Qt 界面、实现自定义控件与复杂布局,以及搭建跨平台桌面构建。

主要能力与铁律:始终用 Qt 信号/槽进行 UI 与逻辑通信,避免直接方法调用造成不可测耦合;绝不在主 UI 线程执行长任务,否则阻塞事件循环并触发系统“无响应”;QSS 样式表应设在 QApplication 层而非逐控件内联;布局使用 QVBoxLayout、QHBoxLayout、QGridLayout 等,不用绝对像素坐标;发布前需在所有目标平台测试,因 Windows、macOS、Linux 的渲染、字体缩放与控件尺寸存在差异。

使用方式:按工作流分步实施——先做 MVC 架构(model 不含 Qt 依赖,controller 用 QObject 与 pyqtSignal 中介),再连接信号/槽(视图只发信号给控制器,不直接调用模型),后台操作用 QThread、QRunnable 或 asyncio 配合 qasync,主题在 QApplication 层加载 QSS 文件,布局用布局管理器并设置 stretch 与列伸缩。

限制与配套:资料未提供安装命令、版本要求或具体平台支持范围。技能提到配套技能 modern-python、python-backend-expert、tdd、accessibility,以及强制记忆协议:开始前读取 .claude/context/memory/learnings.md,完成后记录平台渲染问题、信号/槽模式与 QThread 陷阱。