我遇到了一个问题,试图通过在OptionMenu
中选择它来更改背景色。即使我添加了else
子句,颜色也不会改变。在
root=Tk()
root.geometry("200x200")
variative=IntVar()
list=[1,2,3,4]
variative.set('Select')
listbox=OptionMenu(root,variative,list[0],list[1],list[2],list[3])
def Background(event):
l=listbox.curselection()
if l==1:
root.config(bg='red')
elif l==2:
root.config(bg='yellow')
elif l==3:
root.config(bg='gray')
elif l==4:
root.config(bg='green')
listbox.bind('<<ListboxSelect>>',Background)
listbox.pack()
root.mainloop()
OptionMenu
不是Listbox
,这就是<<ListboxSelect>>
事件从未发生的原因。但是,您可以在创建OptionMenu
时将命令选项传递给它。每次在菜单中选择一个选项时都将调用此命令,并且所选选项将在参数中传递。在下面是一个例子:
相关问题 更多 >
编程相关推荐