WxPython
| wxPython | ||
|---|---|---|
![]() | ||
| Obecná informace | ||
| typ programu | grafické uživatelské prostředí | |
| Licence | LGPL | |
| Technické informace | ||
| Naplánováno v | C a Python | |
| Verze | ||
| Nejnovější stabilní verze | 4.0.7 ( 25. října 2019 ) | |
| Odkazy | ||
wxPython je vazba grafické knihovny wxWidgets pro programovací jazyk Python . Knihovna wxWidgets se vyznačuje tím, že je multiplatformní , takže její použití spolu s Pythonem umožňuje rychlý vývoj multiplatformních grafických aplikací.
Licence
Jako závazný používá wxPython stejnou licenci na svobodný software jako wxWidgets (LGPL), což je licence schválená Free Software Foundation a Open Source Initiative .
Historie
wxPython se zrodil, když Robin Dunn potřeboval GUI , které by fungovalo na systémech HP-UX a také na Windows 3.1 během několika týdnů. Při hodnocení komerčních řešení narazil na některé vazby Pythonu pro sadu nástrojů wxWidgets. Díky tomu se v krátké době naučil Python a stal se jedním z hlavních vývojářů wxPythonu (který se zrodil z těchto počátečních vazeb), spolu s Harri Pasanenem. První verze obalu byly vytvořeny ručně. Kódovou základnu však brzy začalo být velmi obtížné udržovat v synchronizaci s vydáními wxWidgets. Ale pozdější verze byly vytvořeny pomocí SWIG, což výrazně snížilo množství práce potřebné k aktualizaci obalu. První „moderní“ verze byla oznámena v roce 1998.
Od roku 2011 byl kód wxPython téměř kompletně přepsán v projektu nazývaném Phoenix. [ 1 ] Hlavním cílem tohoto projektu bylo co nejvíce zautomatizovat vývoj vazeb Pythonu pro wxWidgets takeit , a tím snížit práci potřebnou k údržbě wxPythonu. [ 2 ] Kromě toho by nová verze byla kompatibilní s verzí 3 Pythonu .
Projekt Phoenix
Projekt Phoenix, který začal v roce 2012, je snahou o to, aby byl wxPython kompatibilní s Pythonem 3 [ 3 ] Tento projekt je novou implementací wxPythonu zaměřenou na zlepšení rychlosti, udržovatelnosti a rozšiřitelnosti. Stejně jako „klasický“ wxPython obaluje knihovnu wxWidgets a poskytuje přístup k jejím částem orientovaným na vytváření uživatelských rozhraní, čímž odhaluje wx API. Umožňuje aplikacím Pythonu mít uživatelská rozhraní na systémech Windows, Mac a Unix s nativním vzhledem a chováním, které vyžadují velmi málo kódu specifického pro platformu. [ 4 ]
Příklad
Toto je jednoduchý modul „ Ahoj světe “, který ilustruje vytváření dvou hlavních objektů v wxPythonu (okna a aplikace) a delegování řízení na událostmi řízený systém (volání
MainLoop()), který poskytuje interaktivní část programu.
#!/usr/bin/env python
import wx
class TestFrame ( wx . Frame ):
def __init__ ( self , parent , ID , title ):
wx . Rám . __init__ ( self , parent , wx .ID_ANY , title , pos = ( 0 , 0 ), size = ( 320 , 240 ) ) panel = wx . Panel ( self , wx .ID_ANY ) text = wx . _ StaticText ( panel , wx .ID_ANY , "Ahoj světe! " , wx .Point ( 10 , 5 ) , wx .Size ( - 1 , - 1 ) )
class TestApp ( wx . App ):
def OnInit ( self ):
frame = TestFrame ( None , wx .ID_ANY , "Ahoj světe! " ) self . SetTopWindow ( rámeček ) rám . Zobrazit ( True ) vrátit True
if __name__ == '__main__' :
app = TestApp ()
app . MainLoop ()
Reference
- ↑ http://wiki.wxpython.org/ProjectPhoenix O projektu Phoenix
- ↑ http://wiki.wxpython.org/ProjectPhoenix/ProjectGoals Cíle projektu Phoenix
- ^ „Oznámení projektu Phoenix ve Skupinách Google“ . Načteno 1. ledna 2014 .
- ↑ „Projektujte soubor Readme Phoenix na GitHubu“ . Načteno 1. ledna 2014 .
