最终的运行效果图(程序见序号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 菜单的更多相关文章

  1. ASP.NET Aries 入门开发教程8:树型列表及自定义右键菜单

    前言: 前面几篇重点都在讲普通列表的相关操作. 本篇主要讲树型列表的操作. 框架在设计时,已经把树型列表和普通列表全面统一了操作,用法几乎是一致的. 下面介绍一些差距化的内容: 1:树型列表绑定: v ...

  2. Electron使用与学习--(基本使用与菜单操作)

    对于electron是个新手,下面纯属个人理解.如有错误,欢迎指出.   一.安装 如果你本地按照github上的 # Install the `electron` command globally ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(74)-微信公众平台开发-自定义菜单

    系列目录 引言 1.如果不借用Senparc.Weixin SDK自定义菜单,编码起来,工作量是非常之大 2.但是借助SDK似乎一切都是简单得不要不要的 3.自定义菜单无需要建立数据库表 4.自定义菜 ...

  4. Android菜单项内容大全

    一.介绍: 菜单是许多应用中常见的用户界面组件. Android3.0版本以前,Android设备会提供一个专用"菜单"按钮呈现常用的一些用户操作, Android3.0版本以后, ...

  5. 张高兴的 UWP 开发笔记:汉堡菜单进阶

    不同于Windows 8应用,Windows 10引入了"汉堡菜单"这一导航模式.说具体点,就拿官方的天气应用来说,左上角三条横杠的图标外加一个SplitView控件组成的这一导航 ...

  6. ionic第二坑——ionic 上拉菜单(ActionSheet)安卓样式坑

    闲话不说,先上图: 这是IOS上的显示效果,代码如下: HTML部分: <body ng-app="starter" ng-controller="actionsh ...

  7. Xamarin.Android之ActionBar与菜单

    一.选项卡 如今很多应用都会使用碎片以便在同一个活动中能够显示多个不同的视图.在Android 3.0 以上的版本中,我们已经可以使用ActionBar提供的Tab来实现这种效果,而不需要我们自己去实 ...

  8. 基于 SailingEase WinForm Framework 开发客户端程序(3:实现菜单/工具栏按钮的解耦及状态控制)

    本系列文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以  SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...

  9. 自定义ActionBar标题与菜单中的文字样式

    自定义标题文字样式 标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式 <style name="AppTheme" parent="A ...

随机推荐

  1. 【LeetCode 3】无重复字符的最长子串

    描述 [题解] 尺取法 对于[l..r]这段 如果新加进来的s[r]有和之前的重复. 那么就不用重新开始了. 直接递增左区间. 让这段没有重复数字了再说. *****然后再把s[r]加进去. [代码] ...

  2. NX二次开发-Block UI C++界面Face Collector(面收集器)控件的获取(持续补充 )

    Face Collector(面收集器)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_obj.h> UF_initialize() ...

  3. 【Java架构:基础技术】一篇文章搞掂:Spring Tool Suite(STS)

    1.简介 STS,是一个自定义版本的Eclipse,她可以方便地用来与各种Spring项目进行交互协作,建议采用Spring进行开发的时候,可以尝试使用这个IDE 2.下载与安装 登录https:// ...

  4. 杂项-笔记-VS:VS2019笔记

    ylbtech-杂项-笔记-VS:VS2019笔记 1.返回顶部 1. http://www.ddooo.com/softdown/142335.htm 2. 2.返回顶部   3.返回顶部   4. ...

  5. 解决ajax跨域问题【5种解决方案】

    什么是跨域问题?跨域问题来源于JavaScript的"同源策略",即只有 协议+主机名+端口号 (如存在)相同,则允许相互访问.也就是说JavaScript只能访问和操作自己域下的 ...

  6. 安装jdk 并放在 /usr/java/default 目录下

    安装步骤 . mkdir /usr/java 2. tar -xvf jdk*.tar.gz -C /usr/java/ 记得将* 换成版本即可3. ln -s /usr/java/jdk* /usr ...

  7. 6.2_springboot2.x分布式整合Dubbo

    1.分布式应用 ​ 在分布式系统中,国内常用zookeeper+dubbo组合,而Spring Boot推荐使用全栈的Spring,Spring Boot+Spring Cloud. 分布式系统: 特 ...

  8. selenium3与Python3实战 web自动化测试框架✍✍✍

    selenium3与Python3实战 web自动化测试框架  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课 ...

  9. eduCF#61 C. Painting the Fence /// DP 选取k段能覆盖的格数

    题目大意: 给定n m 接下来给定m个在n范围内的段的左右端 l r 求选取m-2段 最多能覆盖多少格 #include <bits/stdc++.h> using namespace s ...

  10. 不走弯路,微信小程序的快速入门?

    微信小程序下载注册地址:https://mp.weixin.qq.com/cgi-bin/wx 微信小程序登开发者平台地址(可以查看小程序APPID):https://mp.weixin.qq.com ...