CustomTkinter 是一个基于 Tkinter 的 python UI 库,它提供了新的、现代的和完全可定制的小部件。它们像普通的 Tkinter 小部件一样创建和使用,也可以与普通的 Tkinter 元素结合使用。小部件和窗口颜色适应系统外观或手动设置的模式(’light’,’dark’),并且所有 CustomTkinter 小部件和窗口都支持 HighDPI 缩放(Windows,macOS)。使用 CustomTkinter 可在所有桌面平台(Windows、macOS、Linux)上获得一致且现代的外观。Windows 11 深色模式和蓝色主题的macOS 浅色模式和标准蓝色主题
特性
外观模式变化和缩放变化
CustomTkinter 可以适配 Windows 10/11 light 或 dark 模式:在 macOS 上,需要 python3.10 或更高版本或 anaconda python 版本才能获得暗窗口标题(需要 Tcl/Tk >= 8.6.9):
可滚动框架
可滚动框架可以垂直或水平方向,并且可以与任何其他小部件组合。
带有图像的按钮
可以将图像放在 CTkButton 上。只需将一个 PhotoImage 对象传递给带有 image 参数的 CTkButton。如果根本不需要文本,必须设置或者你指定如何使用选项 text=””一次定位文本和图像:compound
kinterMapView 小部件的集成
在下面的示例中,我使用了与 CustomTkinter 程序集成良好的 TkinterMapView。这是一个基于图块的地图小部件,可显示 OpenStreetMap 或其他基于图块的地图:
安装
使用 pip 安装模块:
pip3 install customtkinter
更新现有安装:
pip3 install customtkinter --upgrade
示例程序
import tkinter
import customtkinter
customtkinter.set_appearance_mode("System") # Modes: system (default), light, dark
customtkinter.set_default_color_theme("blue") # Themes: blue (default), dark-blue, green
app = customtkinter.CTk() # create CTk window like you do with the Tk window
app.geometry("400x240")
def button_function():
print("button pressed")
# Use CTkButton instead of tkinter Button
button = customtkinter.CTkButton(master=app, text="CTkButton", command=button_function)
button.place(relx=0.5, rely=0.5, anchor=tkinter.CENTER)
app.mainloop()
这会在 macOS 上产生以下窗口:
传送门
开源协议:CC0 1.0
开源地址:https://github.com/TomSchimansky/CustomTkinter
项目合集:https://github.com/RepositorySheet
-END-
原文始发于微信公众号(开源技术专栏):基于 Tkinter 的现代可定制 python UI 库
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/166653.html