wxPython是一套优秀的GUI图形库,为Python程序员提供了方便的创建完整、功能齐全的GUI用户界面的工具。它是wxWidgets跨平台GUI库的Python封装和模块,可在多个平台上使用。安装一些软件,如ulipad,需要安装wxPython库才能正常工作。wxPython是Python语言的扩展模块,包装了用C++编写的跨平台GUI API wxWidgets,是Tkinter的替代品之一。
许可证
wxPython使用与wxWidgets相同的许可证。
LGPL协议
历史
wxPython由Robin Dunn开发,起源于1995年他对跨平台GUI应用程序的需求。最初的版本是手工创建的,但随着代码难以维护,1997年开始使用SWIG简化了包装器的更新工作量。第一个“现代”版本在1998年发布,随后项目Phoenix的启动在2010年标志着wxPython的重大更新,以清理实现并使其与Python 3兼容。2017年,项目Phoenix的4.0.0a1版本发布,成为了官方版本。
开发步骤
基本的wxPython程序说明了开发任一wxPython程序所必须的五个基本步骤:
1.导入必须的wxPython包
2.子类化wxPython应用程序类
3. 定义一个应用程序的初始化方法
4. 创建一个应用程序类的实例
5. 进入这个应用程序的主事件循环
*对于初学者或者对程序结构要求不多的用户来说,使用Boa Constructor这样的基于wxPython的开发平台,可以轻而易举的开发出优秀的wxPython程序。
应用示例
以下是一个简单的“Hello world”程序示例,展示了如何在wxPython中创建主窗口对象和应用程序对象,并通过调用`MainLoop()`将控制权传递给事件驱动系统,该系统管理程序的用户交互部分。
使用wxPython开发的应用程序
wxPython已被用于开发多种应用程序,包括但不限于:
- Chandler,个人信息管理器
- Dropbox,基于云存储的桌面客户端
- Editra,跨平台文本编辑器
- Google Drive,基于云存储系统的桌面客户端
- GRASS GIS,免费、开源的地理信息系统
- Métamorphose,批量重命名工具
- Phatch,照片批处理器
- playonlinux和PlayOnMac,Wine前端
- PsychoPy,神经科学和心理学研究的实验创建工具
这些应用程序的开发证明了wxPython在实际项目中的实用性和可靠性。