'tearoff' 属性在 Tkinter 菜单中有什么作用?
先决条件:
- Python GUI – tkinter
- 菜单
Python为开发 GUI(图形用户界面)提供了多种选择。在所有 GUI 方法中,tkinter 是最常用的方法。它是Python附带的 Tk GUI 工具包的标准Python接口。使用 tkinter 的Python是创建 GUI 应用程序的最快和最简单的方法。使用 tkinter 创建 GUI 是一项简单的任务。
重要术语
- Menu用于在 Tkinter 中创建各种类型的菜单,例如顶级、下拉等。顶层菜单,显示在主窗口的标题栏下。
句法:
创建菜单
menubar = Menu(root)
在菜单中添加文本
file = Menu(menubar)
menubar.add_cascade(label ='Your Text', menu = file)
- Tearoff允许您为大多数制作浮动菜单的窗口分离菜单。如果您生成菜单,您可能会在单击顶部菜单项后在顶部看到虚线。要修复此撕裂需要在菜单声明时设置为 0。
file = Menu(menubar,tearoff=0)
edit = Menu(menubar,tearoff=0)
help_ = Menu(menubar,tearoff=0)
- 级联用于在主菜单下创建子菜单。
- 子菜单是插入另一个菜单对象的菜单。通过将菜单添加到 fileMenu 而不是菜单栏,我们创建了一个子菜单。
句法:
Object_Name.add_command(label ='Write Text')
方法
- 导入模块
- 创建普通的 Tkinter 窗口
- 添加菜单
- 添加子菜单
程序:
Python3
# import Module
from tkinter import *
# creating tkinter window
root = Tk()
# set geometry
root.geometry("400x400")
# Add title
root.title('Menu Demonstration')
# Creating Menubar
menubar = Menu(root)
# Adding File Menu and SubMenus
file = Menu(menubar, tearoff=0)
menubar.add_cascade(label='File', menu=file)
file.add_command(label='New File')
file.add_command(label='Open...')
file.add_command(label='Save')
# Adding Edit Menu and SubMenus
edit = Menu(menubar, tearoff=0)
menubar.add_cascade(label='Edit', menu=edit)
edit.add_command(label='Cut')
edit.add_command(label='Copy')
edit.add_command(label='Paste')
edit.add_command(label='Select All')
# Adding Help Menu and SubMenus
help_ = Menu(menubar, tearoff=0)
menubar.add_cascade(label='Help', menu=help_)
help_.add_command(label='Tk Help')
help_.add_command(label='Demo')
# display Menu
root.config(menu=menubar)
# Execute Tkinter
root.mainloop()
输出:
不使用撕纸方法
输出:
用撕纸方式