Repolode
zhiyiYo

zhiyiYo/PyQt-Frameless-Window

一个基于 PyQt/PySide 的跨平台无边框窗口库,支持自定义标题栏和原生模糊效果。

Star
766
Fork
96
未关闭 Issue
18
最近提交
3个月前

这是什么?

PyQt-Frameless-Window 是一个 Python 库,用于去掉 Qt 窗口的系统原生标题栏,同时保留移动、拉伸和窗口阴影等常见行为。继承 FramelessWindow 或 FramelessMainWindow 即可获得默认的自定义标题栏,也可以替换为自己的实现。

库还提供各平台的视觉效果:Windows 10 的亚克力模糊、Windows 11 的云母(Mica)模糊、Windows 7 的 Aero 模糊以及 macOS 模糊。在 Windows 11 上可启用贴靠布局,也可禁止窗口被截屏。支持 Win32、Linux 和 macOS,各平台分别依赖 pywin32、xcffib 或 pyobjc。

主分支基于 PyQt5,PySide2、PySide6 和 PyQt6 版本有对应分支。

核心功能

  • 01无边框窗口,支持移动和拉伸
  • 02窗口阴影与窗口动画
  • 03Win10 亚克力与 Win11 云母模糊效果
  • 04Win7 Aero 与 macOS 模糊效果
  • 05Win11 贴靠布局,需手动开启
  • 06可禁止窗口被截屏

适用场景

  • 为 PyQt 桌面应用实现自定义的现代风格标题栏
  • 为 Windows 应用添加亚克力或云母背景效果
  • 在 PySide 或 PyQt6 项目中创建无边框主窗口

快速上手

  1. 1

    使用 pip 安装该库

    pip install PyQt5-Frameless-Window
  2. 2

    继承 FramelessWindow 创建窗口并显示(参见 README 中的最小示例)

使用前须知

  • 基于 PyQt5 构建;使用 PySide 或 PyQt6 的用户需要切换到对应分支。
  • 需要依赖平台相关的库,如 pywin32、xcffib 或 pyobjc。
  • 在 Win10 上移动亚克力窗口可能会卡住,目前没有好的解决方案。
  • 采用 GPL-3.0 许可证,属于 Copyleft,可能限制在闭源项目中使用。

标签

常见问题

PyQt-Frameless-Window 是什么?
一个基于 PyQt/PySide 的跨平台无边框窗口库,支持自定义标题栏和原生模糊效果。 PyQt-Frameless-Window 是一个 Python 库,用于去掉 Qt 窗口的系统原生标题栏,同时保留移动、拉伸和窗口阴影等常见行为。继承 FramelessWindow 或 FramelessMainWindow 即可获得默认的自定义标题栏,也可以替换为自己的实现。
PyQt-Frameless-Window 可以免费使用吗?用的什么许可证?
PyQt-Frameless-Window 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
PyQt-Frameless-Window 还在维护吗?
半年内有更新。PyQt-Frameless-Window 最近一次提交是在 2026年8月2日。
PyQt-Frameless-Window 适合用来做什么?
为 PyQt 桌面应用实现自定义的现代风格标题栏 为 Windows 应用添加亚克力或云母背景效果 在 PySide 或 PyQt6 项目中创建无边框主窗口
PyQt-Frameless-Window 怎么安装和运行?
使用 pip 安装该库: pip install PyQt5-Frameless-Window 继承 FramelessWindow 创建窗口并显示(参见 README 中的最小示例)
在哪里获取 PyQt-Frameless-Window?
源代码和安装说明在 GitHub 上:https://github.com/zhiyiYo/PyQt-Frameless-Window

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目