如何更改Tkinter OptionMenu小部件的菜单背景颜色?

时间:2011-05-30 15:29:34

标签: python tkinter optionmenu

如果我从http://effbot.org/tkinterbook/optionmenu.htm中选择一个简单的OptionMenu示例,并添加一条设置背景颜色的线(见下文),则只有按钮背景会改变颜色,而不会保留灰色的下拉菜单。我可以为OptionMenu的按钮和菜单设置颜色吗?

我使用的是Windows 7,Python 2.6.6,Tkinter Rev 73770

from Tkinter import *  
master = Tk()  
variable = StringVar(master)  
variable.set("one") # default value  
w = OptionMenu(master, variable, "one", "two", "three")  
w.config(bg = "GREEN")  # Set background color to green  
w.pack()  
mainloop()  

谢谢

1 个答案:

答案 0 :(得分:13)

您需要从menu抓取OptionMenu对象并设置其背景颜色。这应该实现你想要的......

w = OptionMenu(master, variable, "one", "two", "three")  
w.config(bg = "GREEN")  # Set background color to green

# Set this to what you want, I'm assuming "green"...
w["menu"].config(bg="GREEN")

w.pack()