本文主要是Python tkinter Menu菜单控件介绍及使用示例。
tkinter系列文章
python tkinter窗口简单实现
Python tkinter (1) —— Label标签
Python tkinter (2) —— Button标签
Python tkinter (3) —— Entry标签
Python tkinter (4) —— Text控件
Python tkinter (5) 选项按钮与复选框
Python tkinter (6) ——Listbox
Python tkinter (8) ——Spinbox控件
menu
菜单控件
简单示例
创建一个编程语言菜单选项。
示例如下:
import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')# 菜单条
menubar = tkinter.Menu(tk)
tk.config(menu=menubar)# 把菜单创建到菜单条上 创建菜单选项
menu1 = tkinter.Menu(menubar, tearoff=False)
# 给菜单选项添加内容
for item in ['PHP', 'C', 'C++', 'Python', 'Go', 'JS', 'Mysql', '退出']:if item == '退出':menu1.add_command(label=item)else:menu1.add_command(label=item)# 向菜单条上添加菜单选项
menubar.add_cascade(label='语言', menu=menu1)tk.mainloop()
效果如下:
添加分隔线
在菜单选项上添加分隔线。
示例如下:
for item in ['PHP', 'C', 'C++', 'Python', 'Go', 'JS', 'Mysql', '退出']:if item == '退出':# 添加分隔线menu1.add_separator()menu1.add_command(label=item)else:menu1.add_command(label=item)
效果如下:
绑定事件
给其他语言选项上绑定一个公共方法,在退出选项上绑定退出窗口方法。
示例如下:
def comfun():print('语言选项')# 把菜单创建到菜单条上 创建菜单选项
menu1 = tkinter.Menu(menubar, tearoff=False)
# 给菜单选项添加内容
for item in ['PHP', 'C', 'C++', 'Python', 'Go', 'JS', 'Mysql', '退出']:if item == '退出':menu1.add_command(label=item, command=tk.quit)else:menu1.add_command(label=item, command=comfun)
效果为,点击其他语言会在控制台打印语言选项,而点击退出则会关闭窗口。
右键菜单
创建菜单条和绑定菜单选项与之前一致;之后需要绑定鼠标右键事件,
需要处理显示在点击相应坐标位置。
示例如下:
import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')# 菜单条
menubar = tkinter.Menu(tk)
tk.config(menu=menubar)# 菜单选项
menu1 = tkinter.Menu(menubar, tearoff=False)
for item in ['PHP', 'C', 'C++', 'Python', 'Go', 'JS', 'Mysql', '退出']:menu1.add_command(label=item)menubar.add_cascade(label='语言', menu=menu1)# 绑定鼠标右键事件
def show_menu(event):menubar.post(event.x_root, event.y_root)tk.bind('<Button-3>', show_menu)tk.mainloop()
效果如下:
总结
本文主要是Python tkinter Menu菜单控件介绍及使用示例。