Tkinter: how to fill values in OptionMenu dynamically

Jeff Epler jepler at unpythonic.net
Thu Apr 22 10:11:41 EDT 2004


You can't do it using OptionMenu, but you can use a Menubutton plus a
menu with a postcommand.

import Tkinter
import time

def create_menu():
    menu.delete(0, Tkinter.END)
    menu.add_command(label=time.asctime())
    menu.add_command(label="Does anybody even care?")

but = Tkinter.Menubutton(text="Does anyobdy really know what time it is?")
menu = Tkinter.Menu(but, postcommand=create_menu, tearoff=0)
but.configure(menu=menu)
but.pack()
but.mainloop()

Jeff




More information about the Python-list mailing list