在tkinter中,会经常用到Checkbutton 或者 Radiobutton 实现多选功能(单选功能一般用Listbox)。很多文章都是粗略的说了怎么实现多选选中的效果,却没有指出如何确定哪些被选中了。
当只创建一个Checkbutton时候:
v = IntVar()
Checkbutton(master=self.master, variable=v, text=text, height=2, width=10, anchor=W)\
.grid(padx=5, pady=5, ipadx=5, ipady=5, sticky=W)
要取对象是否选中,可直接通过v.get()
方法获取值判断;但若有N个Checkbutton时候,如果仍这样的处理方式,你通过v.get()
获取的值永远是最后一个Checkbutton的值。原因是变量v
被覆盖了。所以要做一个迂回操作,先将v
对象信息,保存下来,当选好后ÿ