如何设置某些Tkinter小部件的边框颜色?

Jef*_*eff 19 python tkinter border tcl colors

我正在尝试更改我的Tkinter应用程序的背景颜色,但对于某些小部件,它会在边缘留下白色边框.

例如,这个:

from tkinter import *

COLOR = "black"

root = Tk()
root.config(bg=COLOR)

button = Button(text="button", bg=COLOR)
button.pack(padx=5, pady=5)
entry = Entry(bg=COLOR, fg='white')
entry.pack(padx=5, pady=5)
text = Text(bg=COLOR, fg='white')
text.pack(padx=5, pady=5)

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

如何设置某些Tkinter小部件的边框颜色?

Jef*_*eff 36

只是用

widget.config(highlightbackground=COLOR)
Run Code Online (Sandbox Code Playgroud)

此外,如果您根本不需要该边框,请将该highlightthickness属性设置为0(零).

  • 高亮背景与背景边框有何关系,即使小部件未突出显示,它也应该起作用? (11认同)
  • 我希望这个不错的解决方案适用于所有小部件,但是例如“ Combobox”小部件没有“ highlightbackground”选项。因此,应用于组合框的解决方案将引发`tkinter.TclError:未知选项“ -highlightbackground”。 (3认同)