wxPython窗口的继承机制实例分析

yipeiwu_com6年前Python基础

本文实例讲述了wxPython窗口的继承机制,分享给大家供大家参考。具体分析如下:

示例代码如下:

import wx  
 
class MyApp(wx.App): 
  def OnInit(self): 
    self.frame = MyFrame(None, title = "My Main Frame jb51.net") 
    self.SetTopWindow(self.frame) 
    self.frame.Show() 
 
    return True 
 
class MyFrame(wx.Frame): 
  def __init__(self, parent, id=wx.ID_ANY, title=""): 
    super(MyFrame, self).__init__(parent, id , title)  
 
      # Attributes  
    self.panel = wx.Panel(self) 
    self.panel.SetBackgroundColour(wx.BLACK)#设置面板的背景色为黑色,wx.BLACK为大写,在此犯过错 
    self.button = wx.Button(self.panel, label="push me", pos=(50, 50))#一个按钮的属性,按钮的父窗口为panel 
 
if __name__ == "__main__": 
  app = MyApp() 
  app.MainLoop() 

其中的wx.Button函数介绍如下:

wx.Button (wxWindow *parent, wxWindowID id, const wxString &label=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxButtonNameStr)
   Constructor, creating and showing a button.

三层窗口框架:

1. frame或dialog
2. panel或notebooks...
3. controls

最后,来张效果图:

希望本文所述对大家的Python程序设计有所帮助。

相关文章

对Django外键关系的描述

注:本文需要你有一定的数据库知识,本文的数据库语法使用mysql书写 Django中,跟外键有关的关系有三种,下面来一一介绍。 OneToManyField 这种最好理解,说白了就是最普...

libreoffice python 操作word及excel文档的方法

1、开始、关闭libreoffice服务; 开始之前同步字体文件时间,是因为创建soffice服务时,服务会检查所需加载的文件的时间,如果其认为时间不符,则其可能会重新加载,耗时较长,因...

快速解决pandas.read_csv()乱码的问题

pandas.read_csv()遇到读进来乱码问题 1.设置encoding='gbk'或者encoding='utf-8'。pandas.read_csv('data.csv',en...

Python 2.7中文显示与处理方法

在学习使用Python的过程中,一定会遇到文字输入与处理,这就不可避免的会使用中文字符。但是Python2.7默认使用的字符集是ASCII,并不支持中文字符的显示与处理,因些如果要在Py...

python如何通过twisted实现数据库异步插入

如何通过twisted实现数据库异步插入?   1. 导入adbapi   2. 生成数据库连接池   3. 执行数据数据库插入操作   4. 打印错误信息,并排错 #!/usr/b...