请输入您要查询的百科知识:

 

词条 WxPython
释义

  1. License

  2. History

  3. Example

  4. Project Phoenix

  5. Applications Developed with wxPython

  6. See also

  7. References

  8. Further reading

  9. External links

{{lowercase|title=wxPython}}{{Infobox software
| name =
| logo = WxPython-logo.png
| logo size = 210px
| screenshot =
| caption = wxPython
| developer = Robin Dunn
Harri Pasanen
| released = {{Start date and age|1998|df=yes}}[1]
| latest release version = 4.0.3
| latest release date = {{Start date and age|2018|06|25}}
| latest preview version = 4.0.4a1[2]
| latest preview date = {{Start date and age|2018|10|27}}
| status = Active
| programming language = C++ / Python
| operating system = Cross-platform
| genre =
| license = wxWindows License
| website = {{URL|http://wxpython.org/}}
}}

wxPython is a wrapper for the cross-platform GUI API (often referred to as a "toolkit") wxWidgets (which is written in C++) for the Python programming language. It is one of the alternatives to Tkinter, which is bundled with Python. It is implemented as a Python extension module (native code). Other popular alternatives are PyGTK, its successor PyGObject, and PyQt. Like wxWidgets, wxPython is free software.

License

Being a wrapper, wxPython uses the same free software licence used by wxWidgets (wxWindows License)[3]—which is approved by Free Software Foundation and Open Source Initiative.

History

wxPython was created when Robin Dunn needed a GUI to be deployed on HP-UX systems and also on Windows 3.1 within a few weeks. While evaluating commercial solutions, he ran across Python bindings for the wxWidgets toolkit. Thus, he learned Python and, in a short time, together with Harri Pasanen, became one of the main developers of wxPython, which grew from those initial bindings.

The first versions of the wrapper were created by hand. However, soon the code base became very difficult to maintain and keep synchronized with wxWidgets releases. Later versions were created with SWIG, greatly decreasing the amount of work to update the wrapper. The first "modern" version was announced in 1998.[1]

Example

This is a simple "Hello world" module, depicting the creation of the two main objects in wxPython (the main window object and the application object), followed by passing the control to the event-driven system (by calling MainLoop()) which manages the user-interactive part of the program.

  1. !/usr/bin/env python

import wx

app = wx.App(False) # Create a new app, don't redirect stdout/stderr to a window.

frame = wx.Frame(None, wx.ID_ANY, "Hello World") # A Frame is a top-level window.

frame.Show(True) # Show the frame.

app.MainLoop()

Project Phoenix

Project Phoenix, which began in 2010, is an effort to clean up the wxPython implementation and in the process make it compatible with Python 3.[4] This project is a new implementation of wxPython, focused on improving speed, maintainability and extensibility. Just like "Classic" wxPython, it wraps the wxWidgets C++ toolkit and provides access to the user interface portions of the wx API, enabling Python applications to have a graphical user interface on Windows, Mac or Unix systems with a native look and feel and requiring very little, if any, platform-specific code.[5]

Applications Developed with wxPython

  • BitTorrent, a peer-to-peer BitTorrent application
  • Chandler, a Personal Information Manager
  • Editra, a multi-platform text editor
  • Google Drive, desktop client for the Google cloud-based storage system[6]
  • GRASS GIS, a free, open source geographical information system
  • Métamorphose, a batch renamer
  • Phatch, a Photo Batch Processor
  • PlayOnLinux and PlayOnMac, Wine front-ends

See also

  • wxGlade, a wxWidgets GUI designer (look & feel of Glade Interface Designer) that creates wxPython code
  • XRCed, an XML tool for wxPython GUI design (external link)
{{Portal|Free and open-source software}}

References

Notes
1. ^{{cite web |url=https://groups.yahoo.com/group/python-announce-list/message/95| title=wxPython 0.3 announcement on Yahoo Groups |accessdate=2007-01-16 }}
2. ^{{cite web|title=Index of /Phoenix/snapshot-builds|url=https://wxpython.org/Phoenix/snapshot-builds/|accessdate=2018-12-14}}
3. ^{{cite web|title=Copyright notice|url=http://docs.wxwidgets.org/stable/wx_copyrightnotice.html|accessdate=2009-02-27}}
4. ^{{cite web |url=http://wiki.wxpython.org/ProjectPhoenix/ProjectGoals| title=Goals of Project Phoenix |accessdate=2016-03-17 }}
5. ^{{cite web |url=https://github.com/wxWidgets/Phoenix/blob/master/README.rst| title=Project Phoenix readme file on GitHub |accessdate=2014-01-01 }}
6. ^{{cite web|title=Open source components and licenses|url=https://support.google.com/drive/bin/answer.py?hl=en&answer=1716931&p=settings_licenses|publisher=Google|accessdate=28 January 2013}}
Bibliography
{{refbegin}}
  • {{cite book

| first1 = Noel
| last1 = Rappin
| first2 = Robin
| last2 = Dunn
| title = wxPython in Action
| edition =
| date = March 1, 2006
| publisher = Manning Publications
| location = Greenwich
| pages = 552
| isbn = 978-1-932394-62-7
| url =
}}{{refend}}

Further reading

  • {{cite book

| first1 = Cody
| last1 = Precord
| title = wxPython 2.8 Application Development Cookbook
| edition =
| date = December 2010
| publisher = Packt Publishing
| location = Greenwich
| pages = 308
| isbn = 978-1-84951-178-0
| url =
}}

External links

{{Commons category}}
  • {{Official website|http://wxpython.org/}}
  • Project Phoenix main page
  • List of applications developed with wxPython
  • Tutorial screencasts for starting wxPython programming at showmedo
{{wxWidgets}}{{Widget toolkits}}{{DEFAULTSORT:Wxpython}}

5 : 1998 software|Free computer libraries|Python libraries|Widget toolkits|WxWidgets

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/25 10:43:08