python tkinter之顶层菜单、弹出菜单实例


Posted in Python onMarch 04, 2020

我就废话不多说了,直接看代码吧!

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()

补充知识:在python3中,Tkinter编写菜单界面对案例

 看代码!

from tkinter import *

top=Tk()
top.wm_title("菜单")
top.geometry("400x300+300+100")

# 创建一个菜单项,类似于导航栏
menubar=Menu(top)

# 创建菜单项
fmenu1=Menu(top)
for item in ['新建','打开','保存','另存为']:
  # 如果该菜单时顶层菜单的一个菜单项,则它添加的是下拉菜单的菜单项。
  fmenu1.add_command(label=item)

fmenu2=Menu(top)
for item in ['复制','粘贴','剪切']:
  fmenu2.add_command(label=item)

fmenu3=Menu(top)
for item in ['默认视图','新式视图']:
  fmenu3.add_command(label=item)

fmenu4=Menu(top)
for item in ["版权信息","其他说明"]:
  fmenu4.add_command(label=item)

# add_cascade 的一个很重要的属性就是 menu 属性,它指明了要把那个菜单级联到该菜单项上,
# 当然,还必不可少的就是 label 属性,用于指定该菜单项的名称
menubar.add_cascade(label="文件",menu=fmenu1)
menubar.add_cascade(label="编辑",menu=fmenu2)
menubar.add_cascade(label="视图",menu=fmenu3)
menubar.add_cascade(label="关于",menu=fmenu4)

# 最后可以用窗口的 menu 属性指定我们使用哪一个作为它的顶层菜单
top['menu']=menubar
top.mainloop()

以上这篇python tkinter之顶层菜单、弹出菜单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python strip()函数 介绍
May 24 Python
Python中的高级数据结构详解
Mar 27 Python
Python中functools模块函数解析
Mar 12 Python
python实现黑客字幕雨效果
Jun 21 Python
python使用正则表达式来获取文件名的前缀方法
Oct 21 Python
Django实现一对多表模型的跨表查询方法
Dec 18 Python
python将控制台输出保存至文件的方法
Jan 07 Python
Python中的元组介绍
Jan 28 Python
Django自带日志 settings.py文件配置方法
Aug 30 Python
解决Pytorch 加载训练好的模型 遇到的error问题
Jan 10 Python
Python语言内置数据类型
Feb 24 Python
PyTorch中的torch.cat简单介绍
Mar 17 Python
python tkinter之 复选、文本、下拉的实现
Mar 04 #Python
自定义Django默认的sitemap站点地图样式
Mar 04 #Python
Python 窗体(tkinter)下拉列表框(Combobox)实例
Mar 04 #Python
Python3中的f-Strings增强版字符串格式化方法
Mar 04 #Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 #Python
python3格式化字符串 f-string的高级用法(推荐)
Mar 04 #Python
利用Python脚本批量生成SQL语句
Mar 04 #Python
You might like
simplehtmldom Doc api帮助文档
2012/03/26 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
sina的lightbox效果。
2007/01/09 Javascript
JavaScript中的变量声明早于赋值分析
2012/03/01 Javascript
浏览器的JavaScript引擎的识别方法
2013/10/20 Javascript
鼠标滑在标题上显示图片的JS代码
2013/11/19 Javascript
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
Bootstrap每天必学之栅格系统(布局)
2015/11/25 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
JS数组去掉重复数据只保留一条的实现代码
2016/08/11 Javascript
webix+springmvc session超时跳转登录页面
2016/10/30 Javascript
vue.js实现表格合并示例代码
2016/11/30 Javascript
浅谈angularjs $http提交数据探索
2017/01/20 Javascript
javascript 显示全局变量与隐式全局变量的区别
2017/02/09 Javascript
jquery实现数字输入框
2017/02/22 Javascript
原生JS实现日历组件的示例代码
2017/09/22 Javascript
mescroll.js上拉加载下拉刷新组件使用详解
2017/11/13 Javascript
jQuery插件jsonview展示json数据
2018/05/26 jQuery
Vue学习笔记之计算属性与侦听器用法
2019/12/07 Javascript
vue使用自定义事件的表单输入组件用法详解【日期组件与货币组件】
2020/06/01 Javascript
[03:18]DOTA2亚洲邀请赛小组赛第一日 RECAP赛事回顾
2015/01/30 DOTA
[原创]pip和pygal的安装实例教程
2017/12/07 Python
Anaconda下安装mysql-python的包实例
2018/06/11 Python
Python基于滑动平均思想实现缺失数据填充的方法
2019/02/21 Python
python基础知识(一)变量与简单数据类型详解
2019/04/17 Python
基于python实现从尾到头打印链表
2019/11/02 Python
python中的时区问题
2021/01/14 Python
Python tkinter之Bind(绑定事件)的使用示例
2021/02/05 Python
带你认识HTML5中的WebSocket
2015/05/22 HTML / CSS
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
社区党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
项目转让协议书
2014/10/27 职场文书
2015年度优秀员工获奖感言
2015/07/31 职场文书
Netty结合Protobuf进行编解码的方法
2021/06/26 Java/Android
Java界面编程实现界面跳转
2022/06/16 Java/Android