tkinter菜单笔记=>持续更新
来源:互联网 发布:淘宝商家可以看到买家 编辑:程序博客网 时间:2024/05/16 14:49
顶层窗口菜单
基本构建方法
"""菜单树(子菜单作为子树)"""from Tkinter import * #(python3 是thinter)top=Menu(win) #win->top-level windowwin.config(menu=top) #set its menu option,menu and toplevel are interconnect file=Menu(top) #the first menufile.add_command(label='New...',command=notdone,underline=0) #underline:菜单调用的快捷键file.add_command(label='Open',command=notdone,underline=0) file.add_command(label='Quit',command=notdone,underline=0)top.add_cascade(label='File',menu=file,underline=0) #串行添加菜单edit=Menu(top,tearoff=False) #tearoff->虚分割线edit.add_command(label='Cut',command=notdone,underline=0)edit.add_command(label='Paste',command=notdone,underline=0)edit.add_separator()top.add_cascade(label='Edit',menu=edit,underline=0) #串行添加菜单submenu=Menu(edit,tearoff=True) #添加子菜单submenu.add_command(label='Spam',command=win.quit,underline=0)submenu.add_command(label='Eggs',command=notdone,underline=0)edit.add_cascade(label='Stuff',menu=submenu,underline=0)
基于Frame和MenuButton的菜单
基本构建方法
#与顶层窗口菜单大同小异menubar=Frame(parent) #母组件menubar.pack() #菜单框架"""每个菜单都是一个菜单按钮对象"""fbutton=Menubutton(menubar,text='File',underline=0)fbutton.pack()file=Menu(fbutton)file.add_command(label='New...',command=notdone,underline=0)file.add_command(label='Open...',command=notdone,underline=0)file.add_command(label='Quit..',command=notdone,underline=0)fbutton.config(menu=file)ebutton=Menubutton(menubar,text='Edit',underline=0)ebutton.pack(side=LEFT)edit=Menu(ebutton,tearoff=False)edit.add_command(label='Cut',command=notdone,underline=0)edit.add_command(label='Paste',command=notdone,underline=0)edit.add_separator()ebutton.config(menu=edit)submenu=Menu(edit,tearoff=True) #然而这里依旧是顶层窗口的菜单树submenu.add_command(label='Cut',command=notdone,underline=0)submenu.add_command(label='Paste',command=notdone,underline=0)edit.add_cascade(label='Stuff',menu=submenu,underline=0)
优点:
因为是基于框架的,所以可以作为大型界面的内嵌部件
基于OptionMenu的选择菜单
基本构造方法
root=Tk()var=StringVar()var.set('spam') #设定初始值opt=OptionMenu(root,var,'spam','eggs','toast')opt.pack(fill=X)#通过var.get()获取初值
0 0
- tkinter菜单笔记=>持续更新
- tkinter杂记=>长期更新
- Android笔记(持续更新)
- iOS笔记 持续更新
- MFC笔记<持续更新>
- ubuntu笔记[持续更新]
- MySql笔记【持续更新】
- MySql笔记【持续更新】
- BIOS 笔记(持续更新...)
- lightGBM笔记(持续更新)
- 笔记--持续更新
- (转)Debian笔记(持续更新)
- [SQLite]学习笔记(持续更新)
- ubuntu学习笔记(持续更新)
- Android 学习笔记 (持续更新)
- Java 学习笔记--持续更新
- oracle学习笔记【持续更新】
- LinuxAPP学习笔记---持续更新
- 关于windows server 2008 连接oracle数据库响应极慢的问题
- hdoj 1272 小希的迷宫【并查集】
- poj3253 Fence Repair
- next数组介绍
- 黑马程序员———死锁
- tkinter菜单笔记=>持续更新
- 经典中的经典Unique Binary Search Trees II
- HALCON算子函数——Chapter 13 : Object
- HDU 4160 — Dolls 最小路径覆盖
- c语言中冒泡排序、插入排序、选择排序算法比较
- loadrunner解决用户名、密码不同问题
- 我的Android进阶之旅------>Android无第三方Jar包的源代报错:The current class path entry belongs to container ...的解决方法
- TableModel
- HALCON算子函数——Chapter 8 : Lines