Cross-platform C++/Qt screenshot tool with in-app annotation editing, configurable capture shortcuts, and a CLI and DBus interface.
zhiyiYo/PyQt-Frameless-Window
A Python library for creating frameless PyQt/PySide windows with custom title bars, resizing, and native blur effects on Windows, Linux, and macOS.
- Stars
- 766
- Forks
- 96
- Open issues
- 18
- Last commit
- 3 months ago
What is it?
PyQt-Frameless-Window is a Python library that removes the native title bar from Qt windows while keeping the behavior users expect, such as moving, stretching, and window shadows. You inherit FramelessWindow or FramelessMainWindow and get a default custom title bar, which you can replace with your own.
The library also adds platform-specific visual effects: acrylic blur on Windows 10, mica blur on Windows 11, Aero blur on Windows 7, and blur on macOS. On Windows 11 it can enable the snap layout, and it can disable screen capture of the window. Windows, Linux, and macOS are supported, with pywin32, xcffib, or pyobjc required per platform.
The main package targets PyQt5. Branches exist for PySide2, PySide6, and PyQt6.
Key features
- 01Frameless window with moving and stretching support
- 02Window shadow and window animation
- 03Win10 acrylic and Win11 mica blur effects
- 04Win7 Aero and macOS blur effects
- 05Win11 snap layout, which must be enabled manually
- 06Option to disable screen capture of the window
Use cases
- Building a PyQt desktop app with a custom, modern-looking title bar
- Adding acrylic or mica backgrounds to a Windows application
- Creating a frameless main window in a PySide or PyQt6 project
Quick start
- 1
Install the library with pip
pip install PyQt5-Frameless-Window - 2
Create a window by inheriting FramelessWindow and show it (see the minimal example in the README)
Things to know
- Built on PyQt5; PySide and PyQt6 users need the separate branches.
- Requires platform-specific dependencies such as pywin32, xcffib, or pyobjc.
- Moving an acrylic window on Win10 may get stuck, with no known fix.
- Licensed under GPL-3.0, which is copyleft and may restrict use in closed-source projects.
Topics
FAQ
- What is PyQt-Frameless-Window?
- A Python library for creating frameless PyQt/PySide windows with custom title bars, resizing, and native blur effects on Windows, Linux, and macOS. PyQt-Frameless-Window is a Python library that removes the native title bar from Qt windows while keeping the behavior users expect, such as moving, stretching, and window shadows. You inherit FramelessWindow or FramelessMainWindow and get a default custom title bar, which you can replace with your own.
- Is PyQt-Frameless-Window free to use? What license does it have?
- PyQt-Frameless-Window is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is PyQt-Frameless-Window still maintained?
- Updated within 6 months. The last commit to PyQt-Frameless-Window was on Aug 2, 2026.
- What can I use PyQt-Frameless-Window for?
- Building a PyQt desktop app with a custom, modern-looking title bar Adding acrylic or mica backgrounds to a Windows application Creating a frameless main window in a PySide or PyQt6 project
- How do I install PyQt-Frameless-Window?
- Install the library with pip: pip install PyQt5-Frameless-Window Create a window by inheriting FramelessWindow and show it (see the minimal example in the README)
- Where can I get PyQt-Frameless-Window?
- The source code and installation instructions are on GitHub: https://github.com/zhiyiYo/PyQt-Frameless-Window
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Go framework for building cross-platform desktop apps with a web frontend (React, Vue, Svelte, etc.) using native rendering engines.
Python framework for building web, desktop and mobile apps with a Flutter-based UI, no frontend experience needed.
Python library that wraps the native web view to show HTML, CSS and JavaScript in a desktop GUI window on Windows, macOS, Linux and Android.
A free, fully local alternative to Logitech Options+ for remapping buttons and controlling Logitech HID++ mice on Windows, macOS, and Linux.
Cross-platform desktop app that uses local or remote LLMs to categorize files and suggest clearer names, with a review step before any change.