wxpython应用实例_如何使用wxPython构建一个GUI应用程序

wxPython是Python语言的一套优秀的GUI图形库。我们可以使用Python程序很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。

一、安装wxPython

首先需要安装wxpython库,按照下面的方法,开始安装:pip install wxpython

安装完成以后,就可以使用wxpython编写可视化窗口的应用了。妈妈再也不担心我不会前端开发了。

二、Hello World

废话不多说,先上实战代码,你可以运行起来,体验一下。import wx

class MyFrame(wx.Frame):

class MyFramea(wx.Frame):

def __init__(self):

super().__init__(parent=None, title='Hello World')

self.Show()

if __name__ == '__main__':

app = wx.App()

frame = MyFrame()

app.MainLoop()

wxPython一些通用的组件:Main window

Menu

Toolbar

Buttons

Text Entry

Labels

wxPython还有很多小的组件,你还可以自定义组件。

三、一个简单的实战案例

在可视化应用程序中,输入框、按钮可谓是,使用率相当高的控件了。接下在上面程序的基础上,添加一个输入框和两个按钮,还有按钮的点击事件。import wx

class MyFramea(wx.Frame):

def __init__(self):

super().__init__(parent=None, title='Hello World')

# 创建面板

panel = wx.Panel(self)

# 声明一个垂直尺寸的容器

my_sizer = wx.BoxSizer(wx.VERTICAL)

# 在Panel上添加输入框

self.text_ctrl = wx.TextCtrl(panel)

# 为该容器添输入框加组件,从左往右,从上到下,边框为5

my_sizer.Add(self.text_ctrl,0,wx.ALL | wx.EXPAND,5)

# 在Panel上添加Button按钮

my_btn = wx.Button(panel, label='点我', pos=(5, 55))

# 为按钮绑定点击事件

my_btn.Bind(wx.EVT_BUTTON, self.on_press)

# 在Panel上添加Button按钮

close_btn = wx.Button(panel, label='关闭', pos=(5, 55))

# 为按钮绑定点击事件

close_btn.Bind(wx.EVT_BUTTON, self.on_close)

# 为该容器添按钮组件

my_sizer.Add(my_btn, 0, wx.ALL | wx.CENTER, 5)

my_sizer.Add(close_btn,0,wx.ALL | wx.CENTER, 5)

# 设置主尺寸

panel.SetSizer(my_sizer)

self.Show()

# 为按钮添加一个事件

def on_press(self, event):

value = self.text_ctrl.GetValue()

if not value:

print("你没有输入内容")

else:

print(f'你输入的内容是: "{value}"')

# 为按钮增加一个关闭按钮事件

def on_close(self, event):

dlg = wx.MessageDialog(None, u"我是一个消息对话框", u"wxPython标题信息", wx.YES_NO | wx.ICON_QUESTION)

if dlg.ShowModal() == wx.ID_YES:

self.Close(True)

dlg.Destroy()

if __name__ == '__main__':

app = wx.App()

frame = MyFramea()

app.MainLoop()

运行这段程序,将会看到下面这个界面:

你可以在输入框,输入一些内容,点击’点我’按钮试一试。然后再点击‘关闭’按钮。看看会发生什么情况?

最终结果应该是下图这样的:

如果你觉得内容还不错,分享给更多朋友,一起提升编程技能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值