Python Tkinter编程 OptionMenu类

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

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

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

from Tkinter import *

master = Tk()

variable = StringVar(master)
variable.set("one") # default value

w = 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 value

option = OptionMenu(master, var, "one", "two", "three", "four")
option.pack()

#
# test stuff

def 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 value

w = apply(OptionMenu, (master, variable) + tuple(OPTIONS))
w.pack()

mainloop()
运行如下图:


这个例子使用了apply函数,将参数传递给OptionMenu。

你可能感兴趣的:(python,GUI,实例,tkinter)