[ZZ] wxPyhon之Frame (一)

使用Python很长时间了,一直以来想写一些有关WxPython的文章,最近有时间准备对WxPython的使用作一次系统的整理。我将在随后的日志中逐步增加对WxPython应用的介绍,有关WxPyton环境的配置我就不多讲了,大家可以看我的博客。

记得我看的第一本介绍编程的书是通过一个Hello Wold例子开始的,我也不免俗套,好了,废话少说让我们开始吧。

<!--[if !supportLists]-->1、  <!--[endif]-->Frame介绍

我学习编程习惯从例子开始,让自己脑子里先有个大致的映像再开始,下是一个Frame窗口的例子,非常简单只有几行代码,但是这已经是一个完整的可以运行的程序了:

import wx

 

class MyFrame(wx.Frame):

    def __init__(self):

        wx.Frame.__init__(self,None,-1,"Hello World",size=(300,400))      

       

if __name__=="__main__":

    app = wx.PySimpleApp()

    frame=MyFrame()

    frame.Show(True)

    app.MainLoop()

 

把上面的代码保存成MyFrame.py。在命令行中执行 python MyFrame.py。你应该可以看到一个窗口,当然什么都没有。

好了,有了上面的代码我们来看看它是怎么执行的, 其中if __name__=="__main__":是程序执行的开始部分,你如果接触过,C++或者Java它相当于Main函数部分。具体细节就不说了,这属于Python语法的部分。Wx.PySimpleAppwxPython中执行应用程序的一个封装,我会在后面讲到,这里你记住它是应用程序执行的入口就可以了。

好下面关键的部分到了,MyFrame是我们创建的一个Python类,注意它的__init__函数,它是这个类的构造函数,wx.Frame.__init__()方法用于创建一个窗口,也就是我们看到的窗口。它创建了一个独立的大小为300*400,窗口标题为“Hello World”。好了讲到这里你大致明白了怎么创建一个简单的窗口,让我们稍微再深入一点。看看窗口还有哪些属性和方法。

<!--[if !supportLists]-->2、  <!--[endif]-->Frame深入

WxPythonFrame来自wx这个包,就像我们在代码中作的那样,你需要首先导入wx包(import wx)。一个窗口一般都会有菜单、工具栏和状态栏,你可以通过CreateStatusBar/CreateToolBar等方法来创建他们。在讲这些之前首先来看看这个类的构造函数__init__,这个函数原型如下:

wxFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame")

参数名

解释

parent

这个参数指明了窗口的父窗口是什么,可以是Null

id

窗口的唯一表示,缺省为-1

title

窗口的标题

pos

窗口的位置,缺省为(-1,-1),具体显示位置根据不同的操作系统平台而异。

size

窗口的大小,缺省为(-1,-1),具体显示大小根据不同的操作系统平台而异。

style

窗口的风格,比如是否有关闭按钮,是否可以最大化等等,随后会详细讲述。

Name

窗口的名称,通常被用于与资源文件关联,可以利用它来进行“皮肤”设置。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值