华域联盟 Python python TKinter弹出式菜单的实例方法

python TKinter弹出式菜单的实例方法

文章目录[隐藏]

1、弹出菜单也叫上下文菜单,建立菜单并向菜单添加各种功能。

2、右键监听鼠标。如右键点击,则根据位置判断弹出。

3、调用Menupop方法。

4、add_separator添加分隔符。

实例

# 弹出式菜单案例
 
import tkinter
 
def makeLabel():
    global baseFrame
    tkinter.Label(baseFrame, text="PHP是最好的编程语言,我用Python").pack()
    
baseFrame = tkinter.Tk()
 
menubar = tkinter.Menu(baseFrame)
for x in ['麻辣香菇', '汽锅鸡', '东坡肘子']:
    menubar.add_separator()
    menubar.add_command(label=x)
    
menubar.add_command(label="重庆火锅", command=makeLabel)
 
# 事件处理函数一定要至少有一个参数,且第一个参数表示的是系统事件
def pop(event):
    # 注意使用 event.x 和 event.x_root 的区别
    # menubar.post(event.x, event.y)
    menubar.post(event.x_root,  event.y_root)
    
baseFrame.bind("<Button-3>", pop)
 
baseFrame.mainloop()

实例扩展:

from tkinter import *
def sys_callbak():
      pass
def fun_callbak():
      pass
def no_thing(event):
      popmenu.post(event.x_root,event.y_root)
master = Tk()
master.title('新闻自动抓取')
menubar = Menu(master)
sysmenu = Menu(menubar,tearoff=False)
sysmenu.add_command(label='添加',command=sys_callbak)
sysmenu.add_command(label='修改',command=sys_callbak)
sysmenu.add_separator()
sysmenu.add_command(label='退出',command=sys_callbak)
menubar.add_cascade(label='系统',menu=sysmenu)
funmenu = Menu(menubar)
funmenu.add_command(label='添加',command=fun_callbak)
funmenu.add_command(label='修改',command=fun_callbak)
menubar.add_cascade(label='功能',menu=funmenu)

popmenu = Menu(master)
popmenu.add_command(label='未设置',command=no_thing)
popmenu.add_command(label='想的美',command=no_thing)
frame = Frame(master,width=312,height=512)
frame.bind('<Button-3>',no_thing)
frame.grid()
master.grid()
master.config(menu=menubar)
mainloop()

到此这篇关于python TKinter弹出式菜单的实例方法的文章就介绍到这了,更多相关python TKinter弹出式菜单的使用内容请搜索华域联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持华域联盟!

您可能感兴趣的文章:

本文由 华域联盟 原创撰写:华域联盟 » python TKinter弹出式菜单的实例方法

转载请保留出处和原文链接:https://www.cnhackhy.com/38687.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部