wxPython初学习

刚才import wx语句一直报错,在IDLE中可以正常运行,但是.py中就不行,查了好多种解决方案,还将wx添加到了环境变量中,都没有解决。最终发现是将文件命名成了wx.py,与python中自己的库冲突,以至于报错。如果大家有出现这种错误的话,修改文件名即可解决。好了话不多说,开启今天的学习笔记。

wxPython的安装

通过命令提示符安装即可,输入:

pip install wxPython

构建一个wxPython程序,至少需要一个应用wx.App()对象和一个窗口wx.Frame()对象。

安装成功后测试一下,输入以下代码:

import wx
#创建程序对象
app = wx.App()
#创建窗口,设置窗口标题,位置以及大小
frm = wx.Frame(None, title="Hello World",size=(400,300),pos=(100,100))
#显示窗口
frm.Show()
#进入主事件循环
app.MainLoop()

在窗口中添加控件

Panel面板控件,静态文本控件StaticText

示例代码:

import wx
class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(None,title="Hello World",size=(400,300),pos=(100,100))
        panel=wx.Panel(parent=self)
        statictext=wx.StaticText(parent=panel,label='Hello World!',pos=(10,10))
app = wx.App()
frm=MyFrame()
frm.Show()
app.MainLoop()

控件可以直接放在窗口中,为了方便布局,一般建议先将所有控件放到面板中,再将面板放到窗口中。

事件处理

图形界面的控件要响应用户的操作,必须添加事件处理机制。

1.事件源:时间发生的场所,就是各个控件。

2事件: wxPython中的事件被封装为事件类wx.Event及其子类, 例如按钮事件类是wx.CommandEvent, 鼠标事件类是wx.MoveEvent。

3 事件处理程序: 一个响应用户事件的方法。

下面通过一个示例介绍事件处理流程。 在以下窗口中有一个按钮和一个静态文本, 在单击OK按钮时会改变静态文本显示的内容。

import wx
class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(None,title="事件处理",size=(400,300))
        panel=wx.Panel(parent=self)
        self.statictext=wx.StaticText(parent=panel,label='请单击OK!',pos=(110,20))
        b=wx. Button(parent=panel,label='OK',pos=(100,50))
        self.Bind(wx.EVT_BUTTON,self.on_click,b)
    def on_click(self,event):
        self.statictext.SetLabelText('Hello World!')
app = wx.App()
frm=MyFrame()
frm.Show()
app.MainLoop()

b是创建按钮对象,self.Bind(wx.EVT_BUTTON,self.on_click,b)绑定事件, wx.EVT_BUTTON是事件类型,即按钮单机事件,self.on_click是事件处理程序,b是事件源,即按钮对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
wxPython 学习文档是一套提供给开发者学习和使用 wxPython 的资源和指南。它包含了关于 wxPython 的详细介绍、学习指导、示例代码以及常见问题解答等内容。 wxPython 是一种基于 Python 编程语言的图形用户界面(GUI) 工具包,它使用了 wxWidgets 库作为底层实现,可以用来创建跨平台的桌面应用程序。学习 wxPython 文档是入门 wxPython 开发的重要步骤。以下是 wxPython 学习文档通常包含的内容: 1. 简介和安装指南:文档中会介绍 wxPython 的背景和特点,以及如何在不同操作系统上安装和配置 wxPython。 2. 入门教程:文档会提供一个从零开始的教程,介绍如何创建一个基本的 wxPython 应用程序,包括创建窗口、添加控件、处理事件等。 3. 组件和控件的使用说明:针对不同类型的控件(如按钮、文本框、列表框等),文档会提供详细的使用说明,包括控件的属性、方法、事件等。 4. 常用布局管理器和容器类:文档会介绍 wxPython 中的布局管理器和容器类的使用方法,帮助开发者更灵活地设计界面布局。 5. 高级主题和技巧:文档中会涵盖一些进阶的主题和技巧,如自定义控件、多线程编程、菜单和工具栏的使用等。 6. 示例代码和项目:文档中会提供一些示例代码和项目,用于演示和实践各种 wxPython 的用法和技巧。 7. 常见问题解答和开发者社区:文档中会收集和解答一些常见问题,并提供开发者社区的链接,方便开发者交流和寻求帮助。 通过学习 wxPython 学习文档,开发者可以系统地了解和学习 wxPython,从简单到复杂地掌握 wxPython 的使用技巧,并最终能够自主设计和开发出功能强大、美观易用的桌面应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Roy Teng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值