下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

Python如何创建应用程序

作者:课课家教育     来源: http://www.kokojia.com点击数:2388发布时间: 2018-11-28 10:05:15

标签: Python应用程序编程教学

大神带你学编程,欢迎选课

  Python如何创建应用程序

  1、使用wxPython之前,先来了解两个基础对象:应用程序对象和顶级窗口。

  应用程序对象管理主事件循环,主事件循环是wxPython程序的动力,如果没有应用程序对象,wxPython应用程序将不能运行。

  顶级窗口通常用于管理最重要的数据,控制并呈现给用户。

  下图显示了这两个基础对象和应用程序的其他部分之间的关系。Python如何创建应用程序_Python_编程教学_应用程序_课课家

  在这个图中,这个应用程序对象拥有顶级窗口和主事件循环,顶级窗口管理其窗口中的组件和其他的分配给它的数据对象,窗口和它的组件的触发事件基于用户的动作,并接受事件通知以便改变显示。

  2、直接使用wx.app

  通常,如果在系统中只有一个窗口的话,可以不创建wx.App子类,直接使用物联网wx.App。这个类提供了一个最基本的OnInit()初始化方法,具体代码如下:

#-*-coding:utf-8-*-
import wx                                      #导入wxPython
app    =wx.App()                               #初始化wx.App类
frame = wx.Frame(None,title='Hello wyPython')  #定义了一个顶级窗口
frame.Show()                                   #显示窗口
app.MainLoop()                                 #调用wx.App类的MainLoop()主循环方法

  上述代码中,wx.App() 初始化wx.App类,包含了OnInit()方法。

  3、使用wx.Frame框架

  在华为GUI中,框架通常也称为窗口。框架是一个容器,用户可以将它在屏幕上任意移动,并可以对它进行缩放,它通常包含诸如标题栏、菜单等。在wxPython中,wx.Frame是所有框架的父类。当用户创建wx.Frame的子类时,子类应该调用其父类的构造器wx.Frame._init_()。wx.Frame的构造器语法格式如下:

wx.Frame(parent,id=-1,title="",pos=wx.DefaultPosition,size=wx.DefaultSize,
         style=wx.DEFAULT_FRAME_STYLE,name="frame")

  参数说明如下:

  parent: 框架的父窗口。如果是顶级窗口,这个值是None。

  id:关于新窗口的wxPython ID 号。通常设为—1,让wxPython自动生成一个新的ID。

  title:窗口的标题。

  pos:一个wx.Point 对象,它指定这个新窗口的左上角在屏幕中的位置。在图形用户界面程序中,通常(0,0)是显示器的左上角。这个默认的(—1,—1)将让系统决定窗口的位置。

  size:一个wx.Size对象,它指定这个窗口的初始尺寸。这个默认的(-1,-1)将让系统决定窗口的初始尺寸。

  style:指定窗口的类型的常量,可以使用或运算来组合它们。

  name:框架的内在的名字,可以用它来寻找这个窗口。

  创建wx.Frame子类的代码如下:

#-*-coding:utf-8-*-
import wx   #导入wxPython
class MyFrame(wx.Frame):
    def_init_(self,parent,id):
       wx.Frame._init_(self,parent,id,title="创建 Frame",pos=(100,100),size=(300,300))

if_name_=='_name_':
    app = wx.App()                        #初始化应用
    frame = MyFrame(parent=None,id=-1)    #实例MyFram类,并传递参数
    frame.Show()                          #显示窗口
    app.MainLoop()                        #调用MainLoop()主循环方法

  上述代码中,在主程序中调用MyFrame类,并且传递两个参数。在MyFrame类中,自动执行_init_()初始化方法,接收参数。然后调用父类wx.Frame的_init_()初始化方法,设置顶级窗口的相关属性。运行结果如下图所示。

  创建完窗口以后,我们可以在窗口内添加一些控件,所谓的控件,就是经常使用的按钮、文本、输入框、单选框等。

赞(21)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程