Python Tkinter编程 OptionMenu类

来源:互联网 发布:黑米软件新闻 编辑:程序博客网 时间:2024/05/29 12:35

OptionMenu类是一个辅助类,它用来创建弹出菜单,并且有一恶搞按钮显示它。它非常类似Windows上的下拉列表插件。

如果要获取当前选项菜单的值,你需要把它和一个Tkinter变量联系起来。

1.如果要创建option menu,我们需要使用OptionMenu类并传给构造函数一个变量和一系列选项值。

from Tkinter import *master = Tk()variable = StringVar(master)variable.set("one") # default valuew = OptionMenu(master, variable, "one", "two", "three")w.pack()mainloop()
效果如下图:

单击one或者右边的button,就会弹出一个选择列表,里面是我们传给OptionMenu的选项列表,我们选择其中任意一个后,button左边的字符也会随之改变。

2.为了获得选取的选项值,我们可以使用变量的get方法。

from Tkinter import *master = Tk()var = StringVar(master)var.set("one") # initial valueoption = OptionMenu(master, var, "one", "two", "three", "four")option.pack()## test stuffdef ok():    print "value is", var.get()    master.quit()button = Button(master, text="OK", command=ok)button.pack()mainloop()
运行效果如下:


点击Ok button,就会输出当前选择的选项值。

3.下面这个例子显示了如何从一系列选项里创建选项菜单。

from Tkinter import *# the constructor syntax is:# OptionMenu(master, variable, *values)OPTIONS = [    "egg",    "bunny",    "chicken"]master = Tk()variable = StringVar(master)variable.set(OPTIONS[0]) # default valuew = apply(OptionMenu, (master, variable) + tuple(OPTIONS))w.pack()mainloop()
运行如下图:


这个例子使用了apply函数,将参数传递给OptionMenu。
原创粉丝点击