使用Linux上的默认主题,我无法获得带边框的按钮。这是我的尝试:
from tkinter import *
from tkinter.ttk import *
tk = Tk()
style = Style()
style.configure('TButton.border', background='red')
button = Button(tk, text='Hello')
button.pack()
mainloop()
我发现主题非常困难,因为我不清楚我能改变什么。有时候改变似乎无能为力。
答案 0 :(得分:1)
这取决于您使用的主题;并非所有主题都将所有小部件与它们可能具有的所有元素相关联,并且一些(例如,OSX本机主题,aqua
)非常严格地控制许多元素的外观和感觉(因为主题引擎在case委托给本地绘图代码)。完全可能的是,您使用的主题根本不允许红色边框。
尝试切换到其他主题...
ttk.Style().theme_use('clam')
答案 1 :(得分:0)
简单提案......如果你真的想要一个边框。理解它不应该令人满意。
import Tkinter as tk
root = tk.Tk()
def nothing(event=None):
print "click"
bgbutton= tk.Button(root, )
bgbutton.pack()
bgbutton.configure(relief=tk.GROOVE, borderwidth=5, background="#2244FF", activebackground="#FF0000", highlightcolor="#00FF00")
button= tk.Button(bgbutton, text="Glance at my border", command=nothing)
button.pack()
button.configure(relief=tk.GROOVE, borderwidth=2)
root.mainloop()