Python3 Tkinter-Menu
1.创建
from tkinter import *
root=Tk()
menubar=Menu(root)
def hello():
print('Hello Menu!')
for item in ['Python','Php','CPP']:
menubar.add_command(label=item,command=hello)
root['menu']=menubar
root.mainloop()

2.下拉菜单
from tkinter import *
root=Tk()
menubar=Menu(root)
filemenu=Menu(menubar,tearoff=0)
def hello():
print('Hello Menu!')
for item in ['Python','Php','CPP']:
filemenu.add_command(label =item,command=hello)
menubar.add_cascade(label='Language',menu=filemenu)
root['menu']=menubar
root.mainloop()

3.添加Checkbutton项
from tkinter import *
root=Tk()
def printItem():
print('Python=',vPython.get())
print('PHP',vPHP.get())
print('CPP=',vCPP.get())
print('C=',vC.get())
print('Java=',vJava.get())
menubar=Menu(root)
vPython=StringVar()
vPHP=StringVar()
vCPP=StringVar()
vC=StringVar()
vJava=StringVar()
filemenu=Menu(menubar,tearoff=0)
for k,v in {'Python':vPython,'PHP':vPHP,'CPP':vCPP,'C':vC,'Java':vJava}.items():
filemenu.add_checkbutton(label=k,command=printItem,variable=v)
menubar.add_cascade(label='Language',menu=filemenu)
root['menu']=menubar
root.mainloop()
root.mainloop()

4.添加Radiobutton项
from tkinter import *
root=Tk()
menubar=Menu(root)
vLang=StringVar()
def printItem():
print('vLang=',vLang.get())
filemenu=Menu(menubar,tearoff=0)
for k in ['Python','PHP','CPP','C']:
filemenu.add_radiobutton(label=k,command=printItem,variable=vLang)
menubar.add_cascade(label='Language',menu=filemenu)
root['menu']=menubar
root.mainloop()

5.添加分隔符
from tkinter import *
root=Tk()
menubar=Menu(root)
def printItem():
print('add_separator')
filemenu=Menu(menubar,tearoff=0)
for k in ['Python','PHP','CPP','C']:
filemenu.add_command(label=k,command=printItem)
filemenu.add_separator()
menubar.add_cascade(label='Language',menu=filemenu)
root['menu']=menubar
root.mainloop()

6.快捷菜单
from tkinter import *
root=Tk()
menubar=Menu(root)
def printItem():
print('popup menu')
filemenu=Menu(menubar,tearoff=0)
for k in ['Python','PHP','CPP','C']:
filemenu.add_command(label=k,command=printItem)
filemenu.add_separator()
menubar.add_cascade(label='Language',menu=filemenu)
def popup(event):
menubar.post(event.x_root,event.y_root)
root.bind('<Button-3>',popup)
root.mainloop()

7.菜单项的操作
from tkinter import *
root=Tk()
menubar=Menu(root)
def printItem():
print('add_separator')
filemenu=Menu(menubar,tearoff=0)
for k in range(5):
filemenu.add_command(label=str(k),command=printItem)
menubar.add_cascade(label='Language',menu=filemenu)
filemenu.insert_command(1,label='1000',command=printItem)
filemenu.insert_checkbutton(2,label='2000',command=printItem)
filemenu.insert_radiobutton(3,label='3000',command=printItem)
filemenu.insert_separator(1)
filemenu.insert_separator(5)
filemenu.delete(6,9)
filemenu.delete(0)
root['menu']=menubar
root.mainloop()

Python3 Tkinter-Menu的更多相关文章
- Tkinter Menu(菜单)
Tkinter Menu: 这个小工具的目标是,让我们来创建我们的应用程序,可以通过使用各种菜单.核心功能,提供的方式来创建三个菜单类型:弹出式,顶层,和下拉 这个小工具的目标是,让我们来创建 ...
- python3+tkinter实现的黑白棋,代码完整 100%能运行
今天分享给大家的是采用Python3+tkinter制作而成的小项目--黑白棋 tkinter是Python内置的图形化模块,简单易用,一般的小型UI程序可以快速用它实现,具体的tkinter相关知识 ...
- Python3 tkinter基础 Menu 添加菜单栏
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Menu Frame 创建右键菜单
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Menu add_checkbutton 多选的下拉菜单
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Menu add_radiobutton 单选的下拉菜单
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Menu add_cascade 多级菜单 add_separator 分割线
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- python3 tkinter模块
一.tkinter 1.tkinter--tool kit interface工具包接口,用于GUI(Graphical User Interface)用户图形界面, 2.python3.x把Tkin ...
- python3 tkinter添加图片和文本
在前面一篇文章基础上,使用tkinter添加图片和文本.在开始之前,我们需要安装Pillow图片库. 一.Pillow的安装 1.方法一:需要下载exe文件,根据下面图片下载和安装 下载完 ...
- Python3 tkinter基础 Menubutton 点击按钮出现下拉菜单
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
随机推荐
- 【Linux资源管理】使用sar进行性能分析
sar可用于监控Linux系统性能,帮助我们分析性能瓶颈.sar工具的使用方式为”sar [选项] intervar [count]”,其中interval为统计信息采样时间,count为采样次数. ...
- 自定义UICollectionViewLayout并添加UIDynamic
大家也可以到这里查看. UICollectionView是iOS6引入的控件,而UIDynamicAnimator是iOS7上新添加的框架.本文主要涵盖3部分: 一是简单概括UICollectionV ...
- Linux下抓取登陆用户密码神器mimipenguin
windows下有Mimikatz,现在linux下有了mimipenguin,国外安全研究员huntergregal发布了工具mimipenguin,一款Linux下的密码抓取神器,弥补了Linux ...
- df du sync
df命令用来检查linux系统的磁盘空间占用情况 df [选项] -h:以容易理解的格式输出文件系统分区占用情况,如32KB,120MB,60GB -k:以KB大小单位输出文件系统分区占用情况 -m: ...
- HTML+css 文字只显示一行
电脑端 设置行高,超出隐藏 p{ width: 80%; height: 16px; line-height: 16px; display: block; overflow: hidden; text ...
- PHP中如何对二维数组按某个键值进行排序
$arr=[ array( 'name'=>'张三', 'age'=>28 ), array( 'name'=> ...
- idea配置SpringBoot热部署之自动Build
一.pom.xml文件导入所需依赖文件 SpringBoot热部署插件 <dependency> <groupId>org.springframework.boot</g ...
- 【C】数据类型和打印(print)
char -128 ~ 127 (1 Byte) unsigned char 0 ~ 255 (1 Byte) short -32768 ~ 32767 (2 Bytes) unsigned sho ...
- kafka初步学习
消息系统 什么是消息系统? 消息系统负责将数据从一个应用程序传输到另一个应用程序,因此应用程序可以专注于数据,但不担心如何共享它.分布式消息传递给予可靠消息队列的概念.消息在客户端应用程序和消息传递系 ...
- 使用C语言协助办公_02批量修改学生信息
最新录制了一个使用C语言批量修改学生信息的视频,主要是讲了如何处理文件路径以及批量修改的思路.灵感来源于需要将整个17级社保照片按规格改名字.具体见:https://chuanke.baidu.com ...