第一个wxPython程序

一、最简单的wxPython程序

我们今天来讲关于wxpython的第一个程序。同样的,我们也是要编写一个Hello World程序,代码如下:

#引用wxPython库
import wx
#创建应用程序对象
app=wx.App()
#创建窗口对象
frame=wx.Frame(None,title="Hello World",size=(400,300),pos=(100,100))
#显示窗口
frame.Show()
#进入主事件循环
app.MainLoop()

至此,我们就创建了一个最基本的wxPython窗口。
声明这种窗口,总有一定的步骤:

  • 引用库文件
  • 创建应用程序对象:这个App对象其实就是一种图形应用程序对象。
  • 创建窗口:一个程序,总有窗口,这里就是用Frame框架搭建的窗口。
  • 显示窗口:当然一个窗口默认是不可见的,必须要设置显示,才会出现在屏幕上,要用Show函数
  • 进入主事件循环:最后调用该方法,使应用程序进入主事件循环。所有的图形处理和界面展示都是基于主事件循环的,只有调用了MainLoop函数才会真正响应事件和处理事件。其实就是把程序的控制权交给wxPython,并阻塞,直到有特殊事件(如关闭窗口)才会返回。
    下面来展示一下我们的窗口:第一个窗口
    还不错,下面我们来讲解一下关于wxPython中的Frame框架
    参数1:默认值为None,为以后版本而保留……
    title参数:用于定义窗口名称,比如我们的窗口名为Hello World。名称为Hello World
    size参数:指定窗口的大小,是一个元组,格式为(长,宽)
    pos参数:指定窗口离电脑屏幕左上角的距离,是一个元组,格式同上

二、常见的wxPython代码

我们上面说得很简单,下面来见识一下真正常用的代码:

import wx
class MyFrame(wx.Frame):  #该对象继承于wx.Frame框架
	def __init__(self):
		super().__init__(parent=None,title="窗口",size=(400,300),pos=(100,100))
		#TODO

class App(wx.App):        #该对象继承于wx.App框架
	def OnInit(self):     #直接实例化该对象并调用此函数,相当于显示,然后直接在main中进入主事件循环
		frame=MyFrame()#执行窗口定义
		frame.Show()
		return True
	def OnExit(self):     #可以在这里释放一些资源
		print("应用程序退出")
		return 0

if __name__=='__main__':#判断是否是主进程
	app=App()
	app.MainLoop()         #在这里调用主事件循环

这是常用的wxPython框架,本来我们应该是使用wx.App来调用主事件循环,但我们自己定义了一个类,它不仅有自己的功能,还有我们新定义的功能,关于继承我们不再讲述。为什么我们要多写一个类呢?因为这样做可以捕获到应用程序的生命周期。它的主要方法就是OnInit函数和OnExit函数。

我们来运行一下,这个例子和刚才的例子是一样的(除了窗口名以外):第2个例子中的窗口

三、总结

至此,我们的第一个wxPython程序就写好了,欢迎大家评论!如有不足,请指出 !感谢您的阅读!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值