Tkinter 提供了一个组件 Menu 用来实现顶级菜单,下拉菜单和弹出菜单。
目录
创建一个顶级菜单
from tkinter import *
root = Tk()
def callback():
print("你好")
menubar = Menu(root)
menubar.add_command(label='Hello', command=callback)
menubar.add_command(label='quit', command=root.quit)
root.config(menu=menubar) #虽然menu已经创建,但是还没添加到root窗口中,所以要调用config方法对root的menu选项相关联
#在IDLE中点退出没反应是因为IDLE也是Tkinter实现的,他们两个共用了一个mainloop(),退出代码重复了,产生了冲突
mainloop()

实现下拉菜单和级联菜单:
from tkinter import *
root = Tk()
def callback():
print("你好")
menubar = Menu(root)
filemenu = Menu(menubar, tearoff=False)
filemenu.add_command(label='打开', command=callback)
filemenu.add_command(label='保存', command=callback)
filemenu.add_separator() #添加分割线
filemenu.add_command(label='退出', command=root.quit)
menubar.add_cascade(label='文件', menu=filemenu) #创建级联菜单,menu选项指定下一级的菜单是什么
editmenu = Menu(menubar, tearoff=False)
editmenu.add_command(label='剪切', command=callback)
editmenu.add_command(label='拷贝', command=callback)
editmenu.add_separator() #添加分割线
editmenu.add_command(label='粘贴', command=callback)
menubar.add_cascade(label='编辑', menu=editmenu)
root.config(menu=menubar)
#在IDLE中点退出没反应是因为IDLE也是Tkinter实现的,他们两个共用了一个mainloop(),退出代码重复了,产生了冲突
mainloop()

实现弹出菜单
from tkinter import *
root = Tk()
def callback():
print("你好")
menubar

本文介绍了Tkinter的GUI编程,包括创建顶级菜单、下拉菜单、级联菜单和弹出菜单,以及使用Menu、Menubutton、OptionMenu组件。特别讨论了星号(*)在函数调用中的打包和解包作用,详细解释了其在形参和实参中的不同用法。
最低0.47元/天 解锁文章
763

被折叠的 条评论
为什么被折叠?



