Is it possible to colour a specific item in a Listbox widget? Is it possible to colour a specific item in a Listbox widget? tkinter tkinter

Is it possible to colour a specific item in a Listbox widget?


According to the effbot.org documentation regarding the Listbox widget you cannot change the color of spefic items:

The listbox can only contain text items, and all items must have the same font and color

But actually you can change both the font and background colors of specific items, by using the itemconfig method of your Listbox object. See the following example:

import tkinter as tkdef demo(master):    listbox = tk.Listbox(master)    listbox.pack(expand=1, fill="both")    # inserting some items    listbox.insert("end", "A list item")    for item in ["one", "two", "three", "four"]:        listbox.insert("end", item)    # this changes the background colour of the 2nd item    listbox.itemconfig(1, {'bg':'red'})    # this changes the font color of the 4th item    listbox.itemconfig(3, {'fg': 'blue'})    # another way to pass the colour    listbox.itemconfig(2, bg='green')    listbox.itemconfig(0, foreground="purple")if __name__ == "__main__":    root = tk.Tk()    demo(root)    root.mainloop()