#这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有

Posted ZRHW菜鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有相关的知识,希望对你有一定的参考价值。

  1. #!/bin/env python  
  2. # -*- coding: utf-8 -*-   
  3.   
  4. #################################################################################  
  5. #这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有  
  6. #################################################################################  
  7. import wx  
  8.   
  9. class MyFrame(wx.Frame):  
  10.   
  11.     def __init__(self):  
  12.         wx.Frame.__init__(self, parent=None,title="My Test Frame",pos = (100,100), size=(500,450))  
  13.           
  14.         #添加第1个Panel面板  
  15.         panel1 = wx.Panel(parent=self,pos = (0,80), size=(225, 250))  
  16.         panel1.Bind(wx.EVT_MOTION,  self.OnPanel1Move)  
  17.         #添加其他控件  
  18.         wx.StaticText(parent=panel1, label= " Cursor Pos:", pos=(10, 10),size=(100, 25))  
  19.         self.posCtrl1 = wx.TextCtrl(parent=panel1, value = "0,0", pos=(100, 10),size=(100, 25))  
  20.           
  21.         #添加第2个Panel面板  
  22.         panel2 = wx.Panel(parent=self,pos = (275,80), size=(225, 250))  
  23.         #添加其他控件  
  24.         wx.StaticText(parent=panel2,label= " The Second Panel", pos=(10, 50),size=(150, 25))  
  25.         self.btn=wx.Button(parent=panel2,label= " My Button",pos=(10, 100),size=(150, 25))  
  26.         self.btn.Bind(wx.EVT_BUTTON,  self.OnMyButtonClick)  
  27.           
  28.         #添加wxStatusBar工具条  
  29.         self.sb=self.CreateStatusBar(number =3)  
  30.         self.SetStatusText("One",0)  
  31.         self.SetStatusText("Two",1)  
  32.         self.SetStatusText("Three",2)  
  33.   
  34.         #添加wxToolBar  
  35.         self.tb=self.CreateToolBar()  
  36.         bitmap1 = wx.EmptyBitmapRGBA(32, 24, red=0, green=0, blue=0, alpha=100)  
  37.         self.tb.AddSeparator()  
  38.         self.tb.AddLabelTool(1,‘‘,bitmap1)  
  39.         self.tb.AddSeparator()  
  40.         bitmap2 = wx.EmptyBitmapRGBA(32, 24, red=0, green=0, blue=0, alpha=150)          
  41.         self.tb.AddLabelTool(2,‘‘,bitmap2)          
  42.         self.tb.Realize()  
  43.           
  44.         #添加wxMenuBar菜单,提供了几种创建菜单的方式  
  45.         menubar = wx.MenuBar()  
  46.         #一级主菜单  
  47.         file = wx.Menu()  
  48.         file.Append(-1, ‘&New‘)  
  49.         file.Append(-1, ‘&Open‘)  
  50.         file.Append(-1, ‘&Save‘)  
  51.         file.AppendSeparator()  
  52.         #多级子菜单  
  53.         imp = wx.Menu()   
  54.         imp.Append(-1, ‘Import newsfeed list...‘)  
  55.         imp.Append(-1, ‘Import bookmarks...‘)  
  56.         imp.Append(-1, ‘Import mail...‘)  
  57.   
  58.         file.AppendMenu(-1, ‘I&mport‘, imp)  
  59.         file.AppendSeparator()  
  60.         #再添加一个菜单  
  61.         quit = wx.MenuItem(file, wx.ID_CLOSE, ‘&Quit/tCtrl+W‘)  
  62.         self.Bind(wx.EVT_MENU, self.OnQuit, id=wx.ID_CLOSE) #绑定方法  
  63.         file.AppendItem(quit)  
  64.   
  65.         menubar.Append(file, ‘&File‘)  
  66.         self.SetMenuBar(menubar)  
  67.           
  68.         self.Centre() #居中显示  
  69.         self.Show(True)#总是一创建就显示Frame框架,  
  70.   
  71.   
  72.           
  73.         #定义事件方法  
  74.     def OnPanel1Move(self, event): #在Panel1上面移动的时调用  
  75.         pos = event.GetPosition()  
  76.         self.posCtrl1.SetValue("%s, %s" % (pos.x, pos.y))  
  77.           
  78.     def OnMyButtonClick(self,event): #在按钮上面单击调用  
  79.         self.btn.SetLabel("You Clicked!")  
  80.           
  81.     def OnQuit(self, event): #点击退出菜单时调用  
  82.         self.Close()  
  83.           
  84.           
  85. #################################################################################  
  86. if __name__ == ‘__main__‘:  
  87.     app = wx.App()  
  88.     frame = MyFrame()  
  89.     app.MainLoop()  
  90. #################################################################################  
  1. #!/bin/env python  
  2. # -*- coding: utf-8 -*-   
  3.   
  4. #################################################################################  
  5. #这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有  
  6. #################################################################################  
  7. import wx  
  8.   
  9. class MyFrame(wx.Frame):  
  10.   
  11.     def __init__(self):  
  12.         wx.Frame.__init__(self, parent=None,title="My Test Frame",pos = (100,100), size=(500,450))  
  13.           
  14.         #添加第1个Panel面板  
  15.         panel1 = wx.Panel(parent=self,pos = (0,80), size=(225, 250))  
  16.         panel1.Bind(wx.EVT_MOTION,  self.OnPanel1Move)  
  17.         #添加其他控件  
  18.         wx.StaticText(parent=panel1, label= " Cursor Pos:", pos=(10, 10),size=(100, 25))  
  19.         self.posCtrl1 = wx.TextCtrl(parent=panel1, value = "0,0", pos=(100, 10),size=(100, 25))  
  20.           
  21.         #添加第2个Panel面板  
  22.         panel2 = wx.Panel(parent=self,pos = (275,80), size=(225, 250))  
  23.         #添加其他控件  
  24.         wx.StaticText(parent=panel2,label= " The Second Panel", pos=(10, 50),size=(150, 25))  
  25.         self.btn=wx.Button(parent=panel2,label= " My Button",pos=(10, 100),size=(150, 25))  
  26.         self.btn.Bind(wx.EVT_BUTTON,  self.OnMyButtonClick)  
  27.           
  28.         #添加wxStatusBar工具条  
  29.         self.sb=self.CreateStatusBar(number =3)  
  30.         self.SetStatusText("One",0)  
  31.         self.SetStatusText("Two",1)  
  32.         self.SetStatusText("Three",2)  
  33.   
  34.         #添加wxToolBar  
  35.         self.tb=self.CreateToolBar()  
  36.         bitmap1 = wx.EmptyBitmapRGBA(32, 24, red=0, green=0, blue=0, alpha=100)  
  37.         self.tb.AddSeparator()  
  38.         self.tb.AddLabelTool(1,‘‘,bitmap1)  
  39.         self.tb.AddSeparator()  
  40.         bitmap2 = wx.EmptyBitmapRGBA(32, 24, red=0, green=0, blue=0, alpha=150)          
  41.         self.tb.AddLabelTool(2,‘‘,bitmap2)          
  42.         self.tb.Realize()  
  43.           
  44.         #添加wxMenuBar菜单,提供了几种创建菜单的方式  
  45.         menubar = wx.MenuBar()  
  46.         #一级主菜单  
  47.         file = wx.Menu()  
  48.         file.Append(-1, ‘&New‘)  
  49.         file.Append(-1, ‘&Open‘)  
  50.         file.Append(-1, ‘&Save‘)  
  51.         file.AppendSeparator()  
  52.         #多级子菜单  
  53.         imp = wx.Menu()   
  54.         imp.Append(-1, ‘Import newsfeed list...‘)  
  55.         imp.Append(-1, ‘Import bookmarks...‘)  
  56.         imp.Append(-1, ‘Import mail...‘)  
  57.   
  58.         file.AppendMenu(-1, ‘I&mport‘, imp)  
  59.         file.AppendSeparator()  
  60.         #再添加一个菜单  
  61.         quit = wx.MenuItem(file, wx.ID_CLOSE, ‘&Quit/tCtrl+W‘)  
  62.         self.Bind(wx.EVT_MENU, self.OnQuit, id=wx.ID_CLOSE) #绑定方法  
  63.         file.AppendItem(quit)  
  64.   
  65.         menubar.Append(file, ‘&File‘)  
  66.         self.SetMenuBar(menubar)  
  67.           
  68.         self.Centre() #居中显示  
  69.         self.Show(True)#总是一创建就显示Frame框架,  
  70.   
  71.   
  72.           
  73.         #定义事件方法  
  74.     def OnPanel1Move(self, event): #在Panel1上面移动的时调用  
  75.         pos = event.GetPosition()  
  76.         self.posCtrl1.SetValue("%s, %s" % (pos.x, pos.y))  
  77.           
  78.     def OnMyButtonClick(self,event): #在按钮上面单击调用  
  79.         self.btn.SetLabel("You Clicked!")  
  80.           
  81.     def OnQuit(self, event): #点击退出菜单时调用  
  82.         self.Close()  
  83.           
  84.           
  85. #################################################################################  
  86. if __name__ == ‘__main__‘:  
  87.     app = wx.App()  
  88.     frame = MyFrame()  
  89.     app.MainLoop()  
  90. #################################################################################  


技术分享


以上是关于#这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有的主要内容,如果未能解决你的问题,请参考以下文章

用wxpython制作可以用于 特征筛选gui程序

wxPython实例代码(购物车)

python桌面开发,为啥选择PyQt或wxPython,而不使用Tkinter?

wxpython 拖动界面时进入假死状态(未响应)解决方法

memcache的带图形界面监控工具memcachephp

wxPython修改文本框颜色