Как изменить цвет фона меню виджета OptionMenu от Tkinter? - PullRequest
6 голосов
/ 30 мая 2011

Если я возьму простой пример OptionMenu из http://effbot.org/tkinterbook/optionmenu.htm, и добавлю строку, которая устанавливает цвет фона (см. Ниже), только цвет фона кнопки изменяется, а не раскрывающееся меню, которое остается серым. Можно ли установить цвет как для кнопки, так и для меню 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 Ответ

13 голосов
/ 30 мая 2011

Вам нужно взять объект 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()  
...