如何在 tkinter ttk 中获得无边框效果?

2023-12-10

enter image description here

为了在 tkinter tk 中获得按钮无边框效果,我曾经设置过borderwidth=0。按钮将合并到背景中。但我无法在 tkinter ttk 中获得相同的效果。我设置borderwidth=0很有型。按钮始终有边框宽度。我不知道为什么?


您可以通过将按钮浮雕设置为来实现您想要的flat或使用 ttk 样式将 borderwidth 设置为 0。但是,某些 ttk 主题不考虑这些样式设置,其中之一是 Windows 中的默认主题。将主题设置为“clam”或“alt”应该可以解决您的问题。

import tkinter as tk
from tkinter import ttk

root = tk.Tk()

b1 = tk.Button(root, text='tk.Button', borderwidth=0)
b1.pack()

s = ttk.Style(root)
s.theme_use('clam')
s.configure('flat.TButton', borderwidth=0)
# s.configure('flat.TButton', relief='flat') gives the same result

b2 = ttk.Button(root, style='flat.TButton', text='ttk.Button')
b2.pack()

root.mainloop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 tkinter ttk 中获得无边框效果? 的相关文章

随机推荐