SuperAPI AI 工具集

pyqt6-ui-development-rules

编程与开发

查看项目

更新于 10-15 21:09

技能介绍

用途:为基于 PyQt6 的桌面界面开发提供一套规则与反模式清单,目标是做出响应流畅、视觉良好、可维护且跨平台一致的 GUI。

主要能力与规则:

  1. UI 与逻辑通信必须使用 Qt 的信号/槽机制,禁止 UI 直接调用业务逻辑方法,以保持 MVC 分离与可测试性。
  2. 禁止在主 UI 线程执行耗时操作,避免阻塞 Qt 事件循环导致界面无响应;后台任务应使用 QThread、QRunnable,或 asyncio 配合 quamash。
  3. QSS 样式表应在应用级别统一设置,而非逐控件内联样式,以保证主题一致、便于维护;通过 object name/class 定位控件。
  4. 禁止使用绝对像素坐标布局,应使用 QVBoxLayout、QHBoxLayout、QGridLayout 等布局管理器与 size policy,保证 DPI 感知与跨平台渲染;DPI 相关尺寸可用 logicalDpiX()。
  5. 发布前需在所有目标平台测试,因为 Windows、macOS、Linux 的渲染、字体缩放与控件尺寸存在差异,必要时使用平台条件逻辑。

反模式对照:UI 槽直接调用业务逻辑、主线程做网络或文件 I/O、硬编码像素尺寸与位置、逐控件内联样式、忽略跨平台渲染差异,均被列为应避免的做法,并给出对应正确做法。

使用方式:资料提到一个强制性的记忆协议——开始前执行 cat .claude/context/memory/learnings.md,完成后记录新发现的模式或例外;并假设上下文可能被重置,未写入记忆的内容视为未发生。

适用场景:PyQt6 桌面应用的界面架构设计、代码评审与重构,尤其是需要响应式布局、统一主题与跨平台兼容的项目。

限制:资料未提供具体安装命令、版本要求、代码示例细节、收费或平台支持范围等信息,暂未提供。