radiobutton 是指“单选按钮”, checkbutton 是指“复选按钮”。
单选按钮与复选按钮是相对来说的,即在这⼀组中,单选按钮中只能有⼀个是被选定的,即⼀个⼈的性别是⼥的, 就⼀定不是男的,但是复选按钮对应的情况则是可以有多个同时被选定,⽐如⼀个⼈即可以喜欢篮球,也可以喜欢 ⾜球,还有可能喜欢乒乓球,等等。
在菜单中,也有类似的概念,即 单选菜单 和 复选菜单 。 它们分别⽤ add_radiobutton和 add_checkbutton 来分别 添加。这两种菜单都是如果⼀旦被选定,那么前⾯会有⼀个类 似于对号的标记出现,checkbutton 可以多个同时被选定, 但是 radiobutton 却只能被选定⼀个,即这个被选定了, 会⾃动取消前⼀个的选定。
测试代码:
from tkinterimport *
wnd = Tk()
menuBar = Menu(wnd)
childMenu = Menu(menuBar)
for item in ["C", "C++", "Java", "C#", "VB", "IOS"]:
childMenu.add_radiobutton(label=item)
childMenu.add_separator()# 插入分割线
for item in ["PHP", "UI", "JavaScript", "Python", "HTML"]:
childMenu.add_checkbutton(label=item)
menuBar.add_cascade(label="编程语言", menu=childMenu)
wnd["menu"] = menuBar
wnd.mainloop()
UI展示效果如下:
上实例测试可以看出,分割线上的菜单只能选择一个,分割线下的菜单可以选择多个。这个就是radiobutton和checkbutton的区别。