- '''''Tkinter教程之Menubutton篇'''
- '''''这是一个过时了的控件,从Tk8.0开始将不再使用这个控件,取而代之的是Menu,这里介绍它是为了
- 兼容以前版本的Tk,能够知道有这个东东就可以了'''
- '''''1.介绍一下Menubutton的常用 方法,可以看到与Menu的使用方法基本相同。'''
- # -*- coding: utf-8 -*-
- from tkinter import *
-
- root = Tk()
- mbLang = Menubutton(root, text='Language')
-
- mbLang.menu = Menu(mbLang)
- # 生成菜单项
- for item in ['Python', 'PHP', 'CPP', 'C', 'Java', 'JavaScript', 'VBScript']:
- mbLang.menu.add_command(label=item)
- mbLang['menu'] = mbLang.menu
- mbLang.pack(side=LEFT)
- # 分隔符将相关的菜单项进行分组,只是UI上的实现,程序上没有任何改变,它也不执行任何的命令
-
- # 添加向菜单中添加checkbutton项
- mbOS = Menubutton(root, text='OS')
- mbOS.menu = Menu(mbOS)
- for item in ['Unix', 'Linux', 'Soloris', 'Windows']:
- mbOS.menu.add_checkbutton(label=item)
- mbOS['menu'] = mbOS.menu
- mbOS.pack(side=LEFT)
-
- # 向菜单中添加radiobutton项
- mbLinux = Menubutton(root, text='Linux')
- mbLinux.menu = Menu(mbLinux)
- for item in ['Redhat', 'Fedra', 'Suse', 'ubuntu', 'Debian']:
- mbLinux.menu.add_radiobutton(label=item)
- mbLinux['menu'] = mbLinux.menu
- mbLinux.pack(side=LEFT)
-
- # 对菜单项进行操作
- # 向Language菜单中添加一项"Ruby",以分隔符分开
- mbLang.menu.add_separator()
- mbLang.menu.add_command(label='Ruby')
-
- # 向OS菜单中第二项添加"FreeBSD",以分隔符分开
- mbOS.menu.insert_separator(2)
- mbOS.menu.insert_checkbutton(3, label='FreeBSD')
- mbOS.menu.insert_separator(4)
-
- # 将Linux中的“Debian”删除
- mbLinux.menu.delete(5)
-
- root.mainloop()
- # 这个控件已经不提倡使用,取而代之的是Menu,使用这个比使用Menubutton更为方便。如果不是特别需要不要使用这个控件。
|