技术开发 频道

Python的wxPython的示例代码 弹出菜单

  【IT168 技术文档】Python的wxPython的示例代码 弹出菜单

  [myphp]   #!/usr/bin/env python   # -*- coding:gb2312 -*-   #导入必要的模块   from wxPython.wx import *   text = u"这是一个弹出菜单的示例"   class TestPanel(wxPanel):   def __init__(self, parent):   wxPanel.__init__(self, parent, -1)   #定义一个布局管理器   box = wxBoxSizer(wxVERTICAL)   fs = self.GetFont().GetPointSize()   bf = wxFont(fs+4, wxSWISS, wxNORMAL, wxBOLD)   nf = wxFont(fs+2, wxSWISS, wxNORMAL, wxNORMAL)   t = wxStaticText(self, -1, u"弹出菜单")   t.SetFont(bf)   box.Add(t, 0, wxCENTER|wxALL, 5)   box.Add(wxStaticLine(self, -1), 0, wxEXPAND)   box.Add(10, 20)   t = wxStaticText(self, -1, text)   t.SetFont(nf)   box.Add(t, 0, wxCENTER|wxALL, 5)   self.SetSizer(box)   EVT_RIGHT_UP(self, self.OnRightClick)   def OnRightClick(self, event):   self.popupid1 = wxNewId()   self.popupid2 = wxNewId()   self.popupid3 = wxNewId()   self.popupid2 = wxNewId()   self.popupid3 = wxNewId()   self.popupid4 = wxNewId()   self.popupid5 = wxNewId()   self.popupid6 = wxNewId()   self.popupid7 = wxNewId()   self.popupid8 = wxNewId()   self.popupid9 = wxNewId()   #制作菜单   menu = wxMenu()   #关于如何放置一个图标文件到菜单项中   item = wxMenuItem(menu, self.popupid1, u"第一个选项")   menu.Append(self.popupid2, u"第二个选项")   menu.Append(self.popupid3, u"第三个选项")   menu.Append(self.popupid4, u"第四个选项")   menu.Append(self.popupid5, u"第五个选项")   menu.Append(self.popupid6, u"第六个选项")   sm = wxMenu()   sm.Append(self.popupid8, u"子菜单一")   sm.Append(self.popupid9, u"子菜单二")   menu.AppendMenu(self.popupid7, u"子菜单项检测", sm)   #显示弹出菜单了   self.PopupMenu(menu, event.GetPosition())   #显示完后需要将菜单desotry   menu.Destroy()   #定义一个frame类   class MyFrame(wxFrame):   def __init__(self):   wxFrame.__init__(self, None, -1, u"弹出菜单示例")   t = TestPanel(self)   #定义一个程序类   class MyApp(wxApp):   def OnInit(self):   class MyApp(wxApp):   def OnInit(self):   f = MyFrame()   f.Show(true)   self.SetTopWindow(f)   return true   #启动程序   if ( __name__ == "__main__" ):   a = MyApp(0)   a.MainLoop()   [/myphp]
0
相关文章