我指的是Listbox
小部件中的特定元素。
最需要着色背景,但特定细胞的任何形式的着色都会很棒。
答案 0 :(得分:20)
根据有关Listbox
小部件的effbot.org
文档,您无法更改特定项目的颜色:
列表框只能包含文本项,并且所有项必须具有相同的字体和颜色
但实际上,您可以使用Listbox
对象的itemconfig
方法更改特定项目的字体和背景颜色。请参阅以下示例:
import tkinter as tk
def 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()