1. #coding=utf-8
  2. import wx
  3.  
  4. class MyFrame(wx.Frame):
  5.  
  6. def __init__(self):
  7. wx.Frame.__init__(self,None,-1,"python菜单栏练习")
  8. self.panel = wx.Panel(self)
  9. #设置菜单栏与子菜单
  10. menubar = wx.MenuBar()
  11. menu1 = wx.Menu()
  12. menu3 = wx.Menu()
  13. bbu1 = menu1.Append(-1,"B2200")
  14. bbu2 = menu1.Append(-1,"B3200")
  15. cc1 = menu3.Append(-1,"cc1")
  16. cc2 = menu3.Append(-1, "cc2")
  17. cc3 = menu3.Append(-1, "cc3")
  18. menu1.AppendMenu(-1,"CC",menu3)
  19. self.Bind(wx.EVT_MENU,self.One_Play,bbu1)
  20. self.Bind(wx.EVT_MENU, self.One_Play, bbu2)
  21. menubar.Append(menu1,"BBU")
  22. menu2 = wx.Menu()
  23. menu2.AppendSeparator()
  24. rru1 = menu2.Append(-1,"R2254")
  25. rru2 = menu2.Append(-1,"R2252")
  26. self.Bind(wx.EVT_MENU, self.Two_Play, rru1)
  27. self.Bind(wx.EVT_MENU, self.Two_Play, rru2)
  28. menubar.Append(menu2,"RRU")
  29. #设置弹出菜单
  30. self.Menu4 = wx.Menu()
  31. self.Menu4.Append(-1,"1")
  32. self.Menu4.Append(-1, "2")
  33. self.Menu4.Append(-1, "3")
  34. self.Menu4.Append(-1, "4")
  35. self.Bind(wx.EVT_CONTEXT_MENU,self.Menu4_Test)
  36. self.SetMenuBar(menubar)
  37. print menubar.GetLabelTop(0)
  38. print menubar.FindMenu("BBU")
  39. #状态栏
  40. status = self.CreateStatusBar()
  41. status.SetStatusText("write bu zhouqiang(6092002351)")
  42.  
  43. def One_Play(self,event):
  44. print "this is BBU"
  45.  
  46. def Two_Play(self,event):
  47. print "this is RRU"
  48.  
  49. def Menu4_Test(self,event):
  50. pos = event.GetPosition()
  51. print pos
  52. pos = self.panel.ScreenToClient(pos)
  53. print pos
  54. self.panel.PopupMenu(self.Menu4,pos)
  55.  
  56. if __name__ == "__main__":
  57. App = wx.App()
  58. Frame = MyFrame()
  59. Frame.Show()
  60. App.MainLoop()

wxpython菜单栏、子菜单栏、弹出菜单栏、状态栏小程序学习源代码分享的更多相关文章

  1. 请写出一段JavaScript代码,要求页面有一个按钮,点击按钮弹出确认框。程序可以判断出用

    请写出一段JavaScript代码,要求页面有一个按钮,点击按钮弹出确认框.程序可以判断出用 户点击的是“确认”还是“取消”. 解答: <HTML> <HEAD> <TI ...

  2. PL/SQL Dev连接Oracle弹出空白提示框的解决方法分享

    第一次安装Oracle,装在虚拟机中,用PL/SQL Dev连接远程数据库的时候老是弹出空白提示框,网上找了很久,解决方法也很多,可是就是没法解决我这种情况的. 出现这种问题,解决方法大概有这几种: ...

  3. 一个简单的div弹出层的小例子

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. mpvue最佳实践 , 美团出的一个小程序框架

    看手机微信,看到说美团出了1个小程序框架,  mpvue 搜下来试试,看了网上的一个对比 ----------------- 以下为引用 我们对微信小程序.mpvue.WePY 这三个开发框架的主要能 ...

  5. WPF 利用子线程弹出子窗体的研究

    一般来说子线程都是用来处理数据的,主窗体用来实现展现,但是有些时候我们希望子窗体实现等待效果,遮挡主窗体并使主窗体逻辑正常进行,这个业务需求虽然不多,但是正好我们用到了,于是我打算把研究成果写在这了. ...

  6. jq弹出一个透明小提示窗,然后逐渐消失

      function show_main(content) { var showWindow = '<div id="show_main" style="borde ...

  7. 【代码笔记】iOS-点击顶点处,弹出另一个小的界面

    一,效果图. 二,文件目录. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewControlle ...

  8. 【前端】jq弹出一个透明小提示窗,然后逐渐消失

      function show_main(content) { var showWindow = '<div id="show_main" style="borde ...

  9. centos 7 下vnc弹出窗口太小解决方法

    使用以下参数启动 : vncserver :2 -geometry 800x600

随机推荐

  1. HRESULT: 0x80040228

    When run the arcgis engine codes in the console application, may come to the exception: HRESULT: 0x8 ...

  2. mysql SELECT INTO语句 语法

    mysql SELECT INTO语句 语法 作用:用于创建表的备份复件. 语法:SELECT * INTO new_table_name [IN externaldatabase]  FROM ol ...

  3. C中的system函数

    windows操作系统下system () 函数详解(主要是在C语言中的应用) 函数名: system 功 能: 发出一个DOS命令 用 法: int system(char *command); s ...

  4. Gradle教程-w3cschool

    Gradle,这是一个基于 JVM 的富有突破性构建工具.Gradle 正迅速成为许多开源项目和前沿企业构建系统的选择,同时也在挑战遗留的自动化构建项目.本教程主要讲解了如何使用 Gradle 构建系 ...

  5. [洛谷P3940]:分组(贪心+并查集)

    题目传送门 题目描述 小$C$在了解了她所需要的信息之后,让兔子们调整到了恰当的位置.小$C$准备给兔子们分成若干个小组来喂恰当的胡萝卜给兔子们吃.此时,$n$只兔子按一定顺序排成一排,第$i$只兔子 ...

  6. jQuery easing动画效果扩展

    引入Easing js文件 <script src="js/jquery.min.js"></script> <script src="js ...

  7. Linux shell - 按时间和文件大小排序显示文件(ll)

    在工作中有这样的情况,需要显示所有的文件,按照时间先后或者文件大小先后排序显示 命令:ls 1.按时间排序显示文件 test@> ll -rt 2.按文件大小排序显示文件(文件大小单位:k,M) ...

  8. (转)Matplotlib的子图subplot的使用

    转:https://www.jianshu.com/p/de223a79217a 前言 Matplotlib的可以把很多张图画到一个显示界面,这就设计到面板切分成一个一个子图.这是怎么做到的呢.mat ...

  9. Linux驱动开发7——I/O内存分配

    CPU通过物理地址访问DDR和外设,DDR内存称为物理内存地址空间,外设寄存器组称为I/O内存地址空间. ARM采用统一编址,而X86采用独立编制.上一章介绍了DDR内存分配,这一章介绍I/O内存分配 ...

  10. H5音乐播放方案

    环境:移动端.浏览器.微信 问题:音乐不自动播放问题 原因: 1.微信端(前置条件添加音乐的时候一定要设置自动播放),有的时候同一款手机.统一个微信版本,会出现音乐不自动播放的问题,无解~~~~~~~ ...