How to set border color of certain Tkinter widgets?

Question:

I’m trying to change the background color of my Tkinter app, but for certain widgets it leaves a white border around the edges.

For example, this:

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()

How can I set border colour of certain Tkinter widgets?

Asked By: jefdaj

||

Answers:

Just use

widget.config(highlightbackground=COLOR)

Furthermore, if you don’t want that border at all, set the highlightthickness attribute to 0 (zero).

Answered By: jefdaj

You have to set the two highlights (with and without focus) to have a continuous color.

from tkinter import *
root = Tk()
e = Entry(highlightthickness=2)
e.config(highlightbackground = "red", highlightcolor= "red")
e.pack()
root.mainloop()
Answered By: user11793197
Categories: questions Tags: , , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.