Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 更改Tkinter列表框中项目的颜色_Python_Tkinter_Listbox - Fatal编程技术网

Python 更改Tkinter列表框中项目的颜色

Python 更改Tkinter列表框中项目的颜色,python,tkinter,listbox,Python,Tkinter,Listbox,关于,是否可以根据列表中保存的数据更改bg颜色 例如: 在列表名称中有几个值,一些为正值,另一些为负值。我想根据它们是正片还是负片来改变它们的背景色 if names > 0 : diffbox.itemconfig(bg='red') if names < 0 : diffbox.itemconfig(bg='green') diffbox.insert(END, names) 如果名称>0: diffbox.itemconfig(bg='red') 如果名称

关于,是否可以根据列表中保存的数据更改bg颜色

例如:

在列表名称中有几个值,一些为正值,另一些为负值。我想根据它们是正片还是负片来改变它们的背景色

if names > 0 :
    diffbox.itemconfig(bg='red')
if names < 0 :
    diffbox.itemconfig(bg='green')

diffbox.insert(END, names)
如果名称>0:
diffbox.itemconfig(bg='red')
如果名称<0:
diffbox.itemconfig(bg='green')
diffbox.insert(结束,名称)
itemconfig()的索引参数可以是
“end”
,您应该利用它。首先将项目插入
结尾
,然后更改其背景

import Tkinter as tk

def demo(master):
    listbox = tk.Listbox(master)
    listbox.pack(expand=1, fill="both")

    # inserting some items
    for names in [0,1,-2,3,4,-5,6]:
        listbox.insert("end", names)
        listbox.itemconfig("end", bg = "red" if names < 0 else "green")

        #instead of one-liner if-else, you can use common one of course
        #if item < 0:
        #     listbox.itemconfig("end", bg = "red")
        #else:
        #     listbox.itemconfig("end", bg = "green")

if __name__ == "__main__":
    root = tk.Tk()
    demo(root)
    root.mainloop()
将Tkinter作为tk导入
def演示(主):
listbox=tk.listbox(主)
pack(expand=1,fill=“两者”)
#插入一些项目
对于[0,1,-2,3,4,-5,6]中的名称:
列表框。插入(“结束”,名称)
listbox.itemconfig(“end”,bg=“red”如果名称<0,则为“green”)
#当然,您可以使用普通的衬里,而不是一个衬里
#如果项目<0:
#listbox.itemconfig(“end”,bg=“red”)
#其他:
#listbox.itemconfig(“end”,bg=“green”)
如果名称=“\uuuuu main\uuuuuuuu”:
root=tk.tk()
演示(根)
root.mainloop()

非常感谢您!很有帮助