前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python开发_tkinter_多级子菜单

python开发_tkinter_多级子菜单

作者头像
Hongten
发布2018-09-13 12:02:09
1.9K0
发布2018-09-13 12:02:09
举报
文章被收录于专栏:HongtenHongten

在之前的blog中有提到python的tkinter中的菜单操作

下面是tkinter的多级子菜单操作

运行效果:

==========================================================

代码部分:

==========================================================

代码语言:javascript
复制
 1 from tkinter import *
 2 
 3 __author__ = {'name' : 'Hongten',
 4               'mail' : 'hongtenzone@foxmail.com',
 5               'blog' : 'http://www.cnblogs.com/',
 6               'QQ': '648719819',
 7               'created' : '2013-09-10'}
 8 
 9 def makeCascadeMenu():
10     # make menu button
11     Cascade_button = Menubutton(mBar, text='Cascading Menus', underline=0)
12     Cascade_button.pack(side=LEFT, padx="2m")
13 
14     # the primary pulldown
15     Cascade_button.menu = Menu(Cascade_button)
16 
17     # this is the menu that cascades from the primary pulldown....
18     Cascade_button.menu.choices = Menu(Cascade_button.menu)
19 
20     # ...and this is a menu that cascades from that.
21     Cascade_button.menu.choices.weirdones = Menu(Cascade_button.menu.choices)
22 
23     # then you define the menus from the deepest level on up.
24     Cascade_button.menu.choices.weirdones.add_command(label='avacado', command=lambda:print('hello'))
25     Cascade_button.menu.choices.weirdones.add_command(label='belgian endive')
26     Cascade_button.menu.choices.weirdones.add_command(label='beefaroni')
27 
28     # definition of the menu one level up...
29     Cascade_button.menu.choices.add_command(label='Chocolate')
30     Cascade_button.menu.choices.add_command(label='Vanilla')
31     Cascade_button.menu.choices.add_command(label='TuttiFruiti')
32     Cascade_button.menu.choices.add_command(label='WopBopaLoopBapABopBamBoom')
33     Cascade_button.menu.choices.add_command(label='Rocky Road')
34     Cascade_button.menu.choices.add_command(label='BubbleGum')
35     Cascade_button.menu.choices.add_cascade(
36         label='Weird Flavors',
37         menu=Cascade_button.menu.choices.weirdones)
38 
39     # and finally, the definition for the top level
40     Cascade_button.menu.add_cascade(label='more choices',
41                                     menu=Cascade_button.menu.choices)
42 
43     Cascade_button['menu'] = Cascade_button.menu
44 
45     return Cascade_button
46 
47 
48 #################################################
49 #### Main starts here ...
50 root = Tk()
51 root.geometry('600x300')
52 
53 
54 # make a menu bar
55 mBar = Frame(root, relief=RAISED, borderwidth=2)
56 mBar.pack(fill=X)
57 
58 
59 Cascade_button = makeCascadeMenu()
60 
61 mBar.tk_menuBar(Cascade_button)
62 
63 
64 root.title('menu demo')
65 root.iconname('menu demo')
66 
67 root.mainloop()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档