菜单还可以包含次级菜单,上一篇文章我们已经做好了一个菜单,接着上一篇的代码,我们向菜单中加入一个次级菜单“引用”。今天的全部代码如下:然后我们着重讲一下新加入的内容:

#coding:utf8

import wx

class Example(wx.Frame):

def __init__(self, *args, **kwargs):

super(Example, self).__init__(*args, **kwargs)

self.InitUI()

def InitUI(self):

caidanlan = wx.MenuBar()#创建菜单栏

caidan = wx.Menu() #创建一个菜单

xuanxiang = wx.MenuItem(caidan,1,u'&退出')#一个选项

xuanxiang.SetBitmap(wx.Bitmap('exit.jpg'))#添加一个图标

caidan.AppendItem(xuanxiang)#将选项添加到菜单中

###############新加内容#############

imp=wx.Menu()#创建一个菜单

imp.Append(wx.ID_ANY,'text')#向菜单添加选项

imp.Append(wx.ID_ANY,'excel')#向菜单添加选项

caidan.AppendMenu(wx.ID_ANY,u'引用',imp)#将菜单imp添加到菜单caidan

####################################

self.Bind(wx.EVT_MENU, self.OnQuit, id=1)#选项与动作绑定,这样点击该选项就会执行退出动作

caidanlan.Append(caidan, u'&下拉菜单') #将创建好的菜单添加到菜单栏

self.SetMenuBar(caidanlan) #将菜单栏添加到窗口Frame

self.SetSize((300, 200))

self.SetTitle(u'菜单')

self.Centre()

self.Show(True)

def OnQuit(self, e):

self.Close()

def main():

ex = wx.App()

Example(None)

ex.MainLoop()

if __name__ == '__main__':

main()创建一个菜单:注意次级菜单和主菜单其实都是Menu对象

向这个菜单中添加两个选项

最后将这个次级菜单加入到主菜单中:

这样我们就完成了次级菜单:次级菜单给各个选项绑定动作也是一样的,参考之前的文章。

另外,我们可以使用 caidan.AppendSeparator()来给菜单添加一条分割线:

wxpython菜单的位置_wxpython教程:[5]次级菜单相关推荐

  1. wxpython菜单的位置_wx.grid 怎么加菜单呀!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import wx import wx.grid class LineupTable(wx.grid.PyGridTableBase): data = ( ...

  2. axure中的拐弯箭头_Axure教程:实现菜单下拉效果

    原标题:Axure教程:实现菜单下拉效果 笔者在本文中介绍了如何用Axure实现菜单下拉效果的操作步骤,以及实现过程中的一些心得体会,与大家分享. 尽管Axure的基础元件库里面已经有菜单项了,但是样 ...

  3. [译][Tkinter 教程14] menu 菜单

    已获原作者授权. 原系列地址: Python Tkinter 简介 一提到"menu"这个词, 很多人首先想到的是餐馆里的菜单. 虽然餐馆菜单和计算机程序中的菜单看起来一点也不像, ...

  4. html菜单wodpress,wordpress进阶教程(二十二):初步了解菜单

    这篇教程放到本站的进阶教程中来,其实有点不合适,但是我发现很多人对菜单使用不熟,更别提应用了.所以我觉得在写菜单的高级应用之前有必要重新写个基础篇. wordpress 3.5版本中,取消了友情链接项 ...

  5. OpenGL交互——菜单控制(基础教程)

    相关单词:entry有"条目,项目,账目,词目,词条的含义",一般含义"进入,入口,门口".                          GLUT教程   ...

  6. bootstrap 导航菜单 折叠位置_python测试开发django44.xadmin自定义菜单项

    前言 xadmin后台的菜单项是放到一个app下的,并且里面的排序是按字母a-z排序,有时候我们需要划分多个项,需要自定义菜单列表,可以通过重写CommAdminView类实现. xadmin后台提供 ...

  7. UC浏览器电脑版怎么自定义标签栏 标签栏位置修改教程

    在UC浏览器中,如果觉得标签栏位置不是很合适的话可以自己来定义,下面小编就告诉你UC浏览器电脑版标签栏位置修改教程. UC浏览器电脑版怎么自定义标签栏 标签栏位置修改教程 UC浏览器电脑版怎么自定义标 ...

  8. Java折叠_[Java教程]Jquery中菜单的展开和折叠

    [Java教程]Jquery中菜单的展开和折叠 0 2018-08-15 16:03:38 标签内容 您好:alee 宿舍管理员 密码管理 修改密码 宿舍管理 学生宿舍查询 学生宿舍新增 学生宿舍分配 ...

  9. 怎么更改滚动条的位置php,给网站顶部添加一个滚动条位置百分比教程

    网站顶部添加滚动条显示位置百分比教程,这里以FLY模板进行演示,其他网站大同小异. 这个效果参考joe模板来的.综合说一句,网站初衷为的是用户的体验感,在美化的同时,不要丧失理性,带不动的情况下就不要 ...

最新文章

  1. kali linux状态栏显示网速
  2. 【短信插件】短信如何对接74cms_v4.2.66_骑士人才系统
  3. Spring提供获取应用上下文的工具
  4. php7.0 yield,PHP7中生成器的新特性 yield-from amp;amp; return-values
  5. ae渲染出现错误是什么问题_[Switch]解决OPENWRT路由,使用UU加速器等出现相同IP,DNS解析错误问题...
  6. 尝试使用jBPM Console NG(测试版)
  7. LeetCode 740. 删除与获得点数(排序+动态规划)
  8. override 与virtual的理解
  9. 深入理解Yii2.0 (2)事件Event
  10. spring boot生成Excel表格 导出/导入
  11. centos 7.5 安装ruby -bash: ruby: command not found
  12. 微信小程序自适应横屏全屏显示(以PPT为例)
  13. 兴义智力象机器人_中科院科普讲师专家赴黔西南州做科普报告巡讲
  14. 将doc文件转为txt文件
  15. [DP优化之平行四边形不等式]例题
  16. 影像技术—行车记录仪客观评价指标
  17. html5 粒子动画效果制作,8款惊艳的HTML5粒子动画特效
  18. 计算机控制台什么意思,电脑上,控制面板是什么意思
  19. Adobe Photoshop CS4插件开发SDK的使用
  20. 安卓自定义日期控件(仿QQ,IOS7)续

热门文章

  1. Java基础学习总结(88)——线程创建与终止、互斥、通信、本地变量
  2. Java基础学习总结(69)——匿名内部类与Lambda表达式
  3. Mysql学习总结(38)——21条MySql性能优化经验
  4. c++多边形扫描线填充算法_基于MATLAB的道格拉斯普克算法递归实现
  5. Spring Cloud 服务注册与发现 [ eureka ]
  6. 【VMCloud云平台】SCSM(六)SCSM创建服务
  7. iOS模拟器上NSHomeDirectory和resourcePath的根路径不同
  8. 配置Setting.xml文件提高maven更新下载jar包速度
  9. YAML_15 include and roles
  10. while循环与for循环