|
|
发表于 2017-10-21 21:12:41
|
显示全部楼层
本帖最后由 dori233 于 2017-10-21 21:14 编辑
我觉得LZ可能是想,通过某些触发事件,譬如按钮去增加OptionMenu的选项
但是OptionMenu本身并不存在这种操作.
我查了一下源文件还有文档也没有.
不过我没怎么用过这个组件,感觉有点丑.
试了一下,个人理解这个就是一个单选 模式 菜单按钮.
目的很明确,就是能够收起来的下拉菜单,利用get()方法去判断选择的模式.
不过我也想了一个笨方法强行去增加选择菜单.
- from tkinter import *
- class TestGui(object):
- _option = ["2", "3", "4"]
- option = ["a", "b", "c", 'd', 'e']
- def __init__(self):
- self.master = Tk()
- self.button_0 = Button(self.master, text='显示选择', command=self.show_Option)
- self.button_1 = Button(self.master, text='添加选择', command=self.add_options)
- self.v = StringVar(self.master)
- self.v.set(self.option[0])
- self.w = OptionMenu(self.master, self.v, *self.option)
- self.button_0.pack()
- self.button_1.pack()
- self.w.pack()
- mainloop()
- def show_Option(self):
- print(self.v.get())
- def add_options(self):
- # 删除
- self.w.destroy()
- # 重新添加
- self.w = OptionMenu(self.master, self.v, *(self.option+self._option))
- self.w.pack()
- if __name__ == "__main__":
- test = TestGui()
复制代码
3.6下试一下程序,按下添加选择,选项则会变多. |
|