Py-Window-Styles是一个强大的Python库,它能让你轻松地为你的应用程序窗口添加炫酷的Windows 11风格标题栏和主题,甚至还能自定义窗口颜色、透明度和拖放功能。无论你使用的是Tkinter、Customtkinter、PyQt还是其他流行的Python UI库,Py-Window-Styles都能完美适配,为你的UI设计增添一抹亮色。
支持的UI库与功能
Py-Window-Styles 的一大亮点在于其广泛的支持性。它兼容几乎所有主流的Python UI库,包括但不限于:
• Tkinter
• Customtkinter
• PyQt
• PySide
• WxPython
• Pygame
• Kivy
• PySimpleGUI
• DearPyGui
此外,它还提供丰富的功能,涵盖了窗口样式、主题、颜色自定义以及其他高级特性:
• 预设窗口样式: 提供多种预设的Windows 11风格,例如 Mica、Acrylic、Aero、Transparent 等,以及 Windows 10 主题和一些经典样式,例如 Win7、Inverse 等,让你的窗口脱颖而出。
• 自定义颜色: 可以自定义标题栏颜色、标题文本颜色和窗口边框颜色,实现个性化的UI设计。 支持十六进制颜色代码。
• 透明度控制: 可以设置单个小部件的透明度,甚至可以指定某个颜色在小部件内透明。
• 文件拖放: 可以轻松地为小部件添加文件拖放功能,简化用户交互。
• 获取系统主题颜色: 可以获取当前Windows系统的Accent Color,实现与系统主题的协调。
安装与使用
安装 Py-Window-Styles 非常简单,只需要使用 pip 命令即可:
pip install pywinstyles
使用方法同样简洁明了。首先导入库,然后使用相应的函数即可应用样式、主题和颜色。以下是一些示例代码:
应用窗口样式:
import pywinstylesimport tkinter as tkroot = tk.Tk()pywinstyles.apply_style(root, "mica") # 应用 Mica 样式root.mainloop()
更改标题栏颜色:
pywinstyles.change_header_color(root, color="#00524d")
更改标题文本颜色:
pywinstyles.change_title_color(root, color="white")
更改边框颜色:
pywinstyles.change_border_color(root, color="#00ffff")
设置小部件透明度:
pywinstyles.set_opacity(my_button, value=0.5) # 设置按钮透明度为 50%pywinstyles.set_opacity(my_label, color="white") # 设置标签中白色部分透明
添加文件拖放功能:
defdrop_func(file):print(file)pywinstyles.apply_dnd(my_button, drop_func)
高级用法:与其他UI库的集成
Py-Window-Styles的设计理念是与多种UI库兼容,所以无论你使用哪种库,使用方法大同小异。 例如,在 PyQt 中,你只需要将 root 替换为你的主窗口对象即可。 不同的UI库可能需要针对其特定的窗口对象进行调整,但总体使用方法保持一致性。
常见问题与解决方案
• 兼容性问题: 虽然 Py-Window-Styles 支持多种 UI 库,但在某些情况下,可能需要根据具体的库进行微调才能获得最佳效果。 请参考项目的文档和示例代码。
• 性能问题: 某些样式,例如 Aero 和 Transparent,可能比较消耗GPU资源。 如果遇到性能问题,建议尝试使用其他样式。
• 错误处理: 在使用过程中,如果遇到错误,请检查你的代码和系统配置,并参考项目的issue列表。
总结
Py-Window-Styles 是一个功能强大且易于使用的Python库,它可以显著提升你的Python应用程序的UI外观和用户体验。 它简洁的API、广泛的兼容性和丰富的功能,使其成为任何Python UI开发者不可或缺的工具。
项目地址:https://github.com/Akascape/py-window-styles