class9_Menubar 菜单
最终的运行效果图(程序见序号5)

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# ------------------------------------------------------------
#
# 参考资料:
# 用 python 和 tkinter 做简单的窗口视窗 - 网易云课堂
# https://study.163.com/course/courseLearn.htm?courseId=1003216011#/learn/video?lessonId=1003650347&courseId=1003216011
#
# 小白学tkinter(Menu组件(菜单)) - CSDN博客
# https://blog.csdn.net/nkd50000/article/details/77172845
#
# Tkinter菜单Menu的使用示例 - CSDN博客
# https://blog.csdn.net/qq_33094993/article/details/62218458 # Python Tkinter 之Menu控件(Python GUI 系列9) - CSDN博客
# https://blog.csdn.net/Jin_Kwok/article/details/80040893
#
# ------------------------------------------------------------
# ******************** class9_Menubar 菜单 *******************
# ******************** class9_Menubar 菜单 *******************
# =====>>>>>>内容概览
# =====>>>>>>内容概览 ''' # ------------------------------------------------------------
# # 1、创建一个是菜单
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 2、创建一个是菜单 + 菜单下的子选项
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 3、创建一个是菜单 + 菜单下的子选项 + 标签(显示点击次数)
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 4、File菜单 + File菜单下的子选项 + 标签(显示点击次数) + Eidt菜单
# ------------------------------------------------------------ # ------------------------------------------------------------
# # 5、File菜单 + File菜单下的子选项 + 标签(显示点击次数) + Eidt菜单 + File菜单的子菜单
# ------------------------------------------------------------ '''
# ------------------------------------------------分割线-------------------------------------------------
# ------------------------------------------------分割线-------------------------------------------------
# ------------------------------------------------分割线-------------------------------------------------
# ------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 1、创建一个是菜单
# ------------------------------------------------------------
'''
# import tkinter as tk
#
# window = tk.Tk()
# window.title('class9_Menubar 菜单')
#
# # 窗口的位置:
# # 300: 窗口的大小横
# # 400: 窗口的大小纵
# # 500: 窗口的位置,横
# # 50: 窗口的位置,纵
# window.geometry('300x400+500+50')
#
# # 一、创建菜单实例,也是一个顶级菜单
# menubar = tk.Menu(window)
# # 创建一个下拉菜单‘文件’,这个菜单是挂在menubar(顶级菜单)上的
# # tearoff 是否关闭 '撕开’项目
# filemenu = tk.Menu(window, tearoff=False)
# # 添加到顶级菜单中
# menubar.add_cascade(label='File', menu=filemenu)
#
# # 二、显示菜单
# # 还可以设置成 root['menu'] = menubar 根窗口的menu属性 是 menubar
# window.config(menu=menubar)
#
# window.mainloop() # ------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 2、创建一个是菜单 + 菜单下的子选项
# ------------------------------------------------------------
'''
# import tkinter as tk
#
# window = tk.Tk()
# window.title('class9_Menubar 菜单')
#
# # 窗口的位置:
# # 300: 窗口的大小横
# # 400: 窗口的大小纵
# # 500: 窗口的位置,横
# # 50: 窗口的位置,纵
# window.geometry('300x400+500+50')
#
# # 一、创建菜单实例,也是一个顶级菜单
# menubar = tk.Menu(window)
# # 创建一个下拉菜单‘文件’,这个菜单是挂在menubar(顶级菜单)上的
# # tearoff 是否关闭 '撕开’项目; 就是菜单中的列表是否可以被拉出来成为一个独立的窗口
# filemenu = tk.Menu(window, tearoff=False)
# # 添加到顶级菜单中
# menubar.add_cascade(label='File', menu=filemenu)
# # File菜单下的子选项
# filemenu.add_command(label='New')
# filemenu.add_command(label='Open')
# filemenu.add_command(label='Save')
# # 子选项之间添加分隔线
# filemenu.add_separator()
# # 子选项,退出
# filemenu.add_command(label='Exit', command=window.quit)
#
# # 二、显示菜单
# # 还可以设置成 root['menu'] = menubar 根窗口的menu属性 是 menubar
# window.config(menu=menubar)
#
# window.mainloop() # ------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 3、创建一个是菜单 + 菜单下的子选项 + 标签(显示点击次数)
# ------------------------------------------------------------
'''
# import tkinter as tk
#
# counter =0
#
# def print_select():
# global counter
# counter +=1
# l.config(text='you have click 【%s】 times' %counter )
#
# window = tk.Tk()
# window.title('class9_Menubar 菜单')
#
# # 窗口的位置:
# # 300: 窗口的大小横
# # 400: 窗口的大小纵
# # 500: 窗口的位置,横
# # 50: 窗口的位置,纵
# window.geometry('300x400+500+50')
#
# # 设置一个标签
# l = tk.Label(window, width=30, text='empty', bg='yellow')
# l.pack()
#
#
# # 一、创建菜单实例,也是一个顶级菜单
# menubar = tk.Menu(window)
# # 创建一个下拉菜单‘文件’,这个菜单是挂在menubar(顶级菜单)上的
# # tearoff 是否关闭 '撕开’项目; 就是菜单中的列表是否可以被拉出来成为一个独立的窗口
# filemenu = tk.Menu(window, tearoff=False)
# # 添加到顶级菜单中
# menubar.add_cascade(label='File', menu=filemenu)
# # File菜单下的子选项
# filemenu.add_command(label='New', command=print_select)
# filemenu.add_command(label='Open', command=print_select)
# filemenu.add_command(label='Save', command=print_select)
# # 子选项之间添加分隔线
# filemenu.add_separator()
# # 子选项,退出
# filemenu.add_command(label='Exit', command=window.quit)
#
# # 二、显示菜单
# # 还可以设置成 root['menu'] = menubar 根窗口的menu属性 是 menubar
# window.config(menu=menubar)
#
# window.mainloop() # ------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 4、File菜单 + File菜单下的子选项 + 标签(显示点击次数) + Eidt菜单
# ------------------------------------------------------------
'''
# import tkinter as tk
#
# counter =0
#
# def print_select():
# global counter
# counter +=1
# l.config(text='you have click 【%s】 times' %counter )
#
# window = tk.Tk()
# window.title('class9_Menubar 菜单')
#
# # 窗口的位置:
# # 300: 窗口的大小横
# # 400: 窗口的大小纵
# # 500: 窗口的位置,横
# # 50: 窗口的位置,纵
# window.geometry('300x400+500+50')
#
# # 设置一个标签
# l = tk.Label(window, width=30, text='empty', bg='yellow')
# l.pack()
#
#
# # 一、创建菜单实例,也是一个顶级菜单(实际上是一个菜单条)
# menubar = tk.Menu(window)
# # 创建一个下拉菜单‘文件’,这个菜单是挂在menubar(顶级菜单)上的
# # tearoff 是否关闭 '撕开’项目; 就是菜单中的列表是否可以被拉出来成为一个独立的窗口
# filemenu = tk.Menu(window, tearoff=False)
# # 添加到顶级菜单中
# menubar.add_cascade(label='File', menu=filemenu)
# # File菜单下的子选项
# filemenu.add_command(label='New', command=print_select)
# filemenu.add_command(label='Open', command=print_select)
# filemenu.add_command(label='Save', command=print_select)
# # 子选项之间添加分隔线
# filemenu.add_separator()
# # 子选项,退出
# filemenu.add_command(label='Exit', command=window.quit)
#
#
# # 编辑菜单
# # 增加一个名称为“编辑”的部分
# editmenu = tk.Menu(window, tearoff=True) # tearoff=True 表示可以被独立成一个窗口
# # 将该部分挂载到状态栏 menubar 中
# menubar.add_cascade(label='Edit', menu=editmenu)
# editmenu.add_command(label='Cut', command=print_select)
# editmenu.add_command(label='Copy', command=print_select)
# editmenu.add_command(label='Paste', command=print_select)
#
# # 二、显示菜单
# # 还可以设置成 root['menu'] = menubar 根窗口的menu属性 是 menubar
# window.config(menu=menubar)
#
# window.mainloop() # ------------------------------------------------分割线-------------------------------------------------
'''
# ------------------------------------------------------------
# # 5、File菜单 + File菜单下的子选项 + 标签(显示点击次数) + Eidt菜单 + File菜单的子菜单
# ------------------------------------------------------------
'''
import tkinter as tk counter =0 def print_select():
global counter
counter +=1
l.config(text='you have click 【%s】 times' %counter ) window = tk.Tk()
window.title('class9_Menubar 菜单') # 窗口的位置:
# 300: 窗口的大小横
# 400: 窗口的大小纵
# 500: 窗口的位置,横
# 50: 窗口的位置,纵
window.geometry('300x400+500+50') # 设置一个标签
l = tk.Label(window, width=30, text='empty', bg='yellow')
l.pack() # 一、创建菜单实例,也是一个顶级菜单(实际上是一个菜单条)
menubar = tk.Menu(window)
# 创建一个下拉菜单‘文件’,这个菜单是挂在menubar(顶级菜单)上的
# tearoff 是否关闭 '撕开’项目; 就是菜单中的列表是否可以被拉出来成为一个独立的窗口
filemenu = tk.Menu(window, tearoff=False)
# 添加到顶级菜单中
menubar.add_cascade(label='File', menu=filemenu)
# File菜单下的子选项
filemenu.add_command(label='New', command=print_select)
filemenu.add_command(label='Open', command=print_select)
filemenu.add_command(label='Save', command=print_select)
# 子选项之间添加分隔线
filemenu.add_separator()
# 子选项,退出
filemenu.add_command(label='Exit', command=window.quit) # 给上面的 File 文件菜单增加子选项
# 增加一个 submenu 部分
submenu= tk.Menu(filemenu, tearoff=False)
# 设置 submenu 菜单所挂载的位置入口
filemenu.add_cascade(label='Import', menu=submenu, underline=False)
submenu.add_command(label="Submenu1", command=print_select) # 编辑菜单
# 增加一个名称为“编辑”的部分
editmenu = tk.Menu(window, tearoff=True) # tearoff=True 表示可以被独立成一个窗口
# 将该部分挂载到状态栏 menubar 中
menubar.add_cascade(label='Edit', menu=editmenu)
editmenu.add_command(label='Cut', command=print_select)
editmenu.add_command(label='Copy', command=print_select)
editmenu.add_command(label='Paste', command=print_select) # 二、显示菜单
# 还可以设置成 root['menu'] = menubar 根窗口的menu属性 是 menubar
window.config(menu=menubar) window.mainloop()
最终的运行效果图(程序见序号5)

class9_Menubar 菜单的更多相关文章
- ASP.NET Aries 入门开发教程8:树型列表及自定义右键菜单
前言: 前面几篇重点都在讲普通列表的相关操作. 本篇主要讲树型列表的操作. 框架在设计时,已经把树型列表和普通列表全面统一了操作,用法几乎是一致的. 下面介绍一些差距化的内容: 1:树型列表绑定: v ...
- Electron使用与学习--(基本使用与菜单操作)
对于electron是个新手,下面纯属个人理解.如有错误,欢迎指出. 一.安装 如果你本地按照github上的 # Install the `electron` command globally ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(74)-微信公众平台开发-自定义菜单
系列目录 引言 1.如果不借用Senparc.Weixin SDK自定义菜单,编码起来,工作量是非常之大 2.但是借助SDK似乎一切都是简单得不要不要的 3.自定义菜单无需要建立数据库表 4.自定义菜 ...
- Android菜单项内容大全
一.介绍: 菜单是许多应用中常见的用户界面组件. Android3.0版本以前,Android设备会提供一个专用"菜单"按钮呈现常用的一些用户操作, Android3.0版本以后, ...
- 张高兴的 UWP 开发笔记:汉堡菜单进阶
不同于Windows 8应用,Windows 10引入了"汉堡菜单"这一导航模式.说具体点,就拿官方的天气应用来说,左上角三条横杠的图标外加一个SplitView控件组成的这一导航 ...
- ionic第二坑——ionic 上拉菜单(ActionSheet)安卓样式坑
闲话不说,先上图: 这是IOS上的显示效果,代码如下: HTML部分: <body ng-app="starter" ng-controller="actionsh ...
- Xamarin.Android之ActionBar与菜单
一.选项卡 如今很多应用都会使用碎片以便在同一个活动中能够显示多个不同的视图.在Android 3.0 以上的版本中,我们已经可以使用ActionBar提供的Tab来实现这种效果,而不需要我们自己去实 ...
- 基于 SailingEase WinForm Framework 开发客户端程序(3:实现菜单/工具栏按钮的解耦及状态控制)
本系列文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以 SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...
- 自定义ActionBar标题与菜单中的文字样式
自定义标题文字样式 标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式 <style name="AppTheme" parent="A ...
随机推荐
- delphi 下载
获取网络文件大小 //delphi 获取网络文件大小 function GetUrlFileSize(aURL: string): integer; var FileSize: integer; va ...
- [SCOI2009]迷路(矩阵快速幂) 题解
Description windy在有向图中迷路了. 该有向图有 N 个节点,windy从节点 0 出发,他必须恰好在 T 时刻到达节点 N-1. 现在给出该有向图,你能告诉windy总共有多少种不同 ...
- yield和生成器, 通过斐波那契数列学习(2.5)
实现斐波那契数列的集中方法 返回一个数 def fib(max): n, a, b = 0, 0, 1 while n < max: print(b) a, b = b, a+b n += 1 ...
- Shell基本正则表达式和扩展正则表达式
BRE和ERE的区别 基本正则表达式(BRE)和扩展正则表达式(ERE)的区别仅仅是元字符(meta charactor)的区别而已. BRE: 只有^$.*[]是元字符 ERE: ^$.[]*+() ...
- Java-Class-@I:javax.annotation.PostConstruct
ylbtech-Java-Class-@I:javax.annotation.PostConstruct 1.返回顶部 2.返回顶部 1.1. package com.ylbtech.api.pl ...
- Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务
文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...
- 拾遗:ssh 公钥连接前的相关准备
ssh 公钥连接条件: sshd_config 中启用公钥认证 authorized_keys 文件权限必须为 0600 目标用户的 家目录 权限必须为 0700 目标账户必须已设定登陆密码(即处于可 ...
- centos7.5下生成公钥,实现ssh免密钥登陆
配置SSH无密码登录需要4步准备工作生成公钥和私钥导入公钥到认证文件,更改权限测试1. 准备工作确认本机sshd的配置文件(需要root权限) # vi /etc/ssh/sshd_config 1找 ...
- Java架构师必看的10本书
1.大型网站系统与JAVA中间件实践 本书围绕大型网站和支撑大型网站架构的Java中间件的实践展开介绍. 从分布式系统的知识切入,让读者对分布式系统有基本的了解:然后介绍大型网站随着数据量.访问量增长 ...
- java线程池和五种常用线程池的策略使用与解析
java线程池和五种常用线程池策略使用与解析 一.线程池 关于为什么要使用线程池久不赘述了,首先看一下java中作为线程池Executor底层实现类的ThredPoolExecutor的构造函数 pu ...