WxPython

Поделись знанием:
Перейти к: навигация, поиск
WxPython
Разработчики

Робин Данн
Гарри Пасанен

Последняя версия

3.0.2.0 (28 ноября 2014)

Состояние

Активное

Лицензия

[wxwidgets.org/licence.htm wxWidgets License] (совместима с GPL[1])

Сайт

[wxpython.org n.org]

К:Википедия:Статьи без изображений (тип: не указан)

WxPython — обёртка библиотеки кроссплатформенного графического интерфейса пользователя для Python, основой которого является кроссплатформенная API (интерфейс программирования приложений) wxWidgets, написанная на языке программирования C++. Одна из альтернатив Tkinter, которая поставляется вместе с Python. Реализована в виде модуля расширения Python (машинный код). Другие популярные альтернативы — PyGTK и PyQt. Так же, как и WxWidgets, WxPython является свободным программным обеспечением.





Лицензия

Как обёртка библиотеки, WxPython использует те же бесплатные лицензии на программное обеспечение, что и WxWidgets (WxWindows лицензии), которые утверждаются Фондом свободного программного обеспечения и Open Source Initiative.

История

Проект WxPython зародился, когда Робину Данну потребовался в ближайшие несколько недель графический интерфейс пользователя, развёрнутый на HP-UX системах, а также на Windows 3.1. При оценке коммерческих решений он наткнулся на Python, входящий в набор инструментальных средств WxWidgets. Таким образом он узнал Python и в скором времени, вместе с Харри Пасаненом, стал одним из основных разработчиков WxPython, которая произросла из этой начальной связки. Первые версии обёртки библиотеки создавались вручную. Однако вскоре ядро программы стало очень трудно поддерживать и синхронизировать с релизами WxWidgets. Более поздние версии были созданы с SWIG, значительно уменьшая объём работ на обновление обёртки. О выходе первой «современной» версии было объявлено в 1998 году.

Примеры

Ниже приведён модуль «Hello, world!», показывающий создание двух главных объектов в WxPython (основного объекта окна и объекта приложения), а затем передачи управления обработчику событий (вызовом функции MainLoop ()), который отвечает за интерактивную часть пользователя программы.

#!/usr/bin/env python

import wx
 
class TestFrame(wx.Frame):
    def __init__(self, parent, title):
        wx.Frame.__init__(self, parent, id=-1, title=title)
        text = wx.StaticText(self, label=title)
 
app = wx.PySimpleApp()
frame = TestFrame(None, "Hello, world!")
frame.Show()
app.MainLoop()

Приложения, разработанные с использованием WxPython

  • BitTorrent — первый клиент для протокола BitTorrent
  • Chandler — персональный информационный менеджер
  • Dropbox — облачное хранилище данных
  • Phatch — пакетный обработчик изображений
  • Métamorphose — пакетный переименователь
  • PlayOnLinux и PlayOnMac — надстройки над Wine
  • GRASS (ГИС) — бесплатная система для обработки географической информации с открытым исходным кодом
  • Диск Google — настольный клиент для системы облачного хранения данных Google[2]

См. также

  • wxWidgets
  • [wxglade.sourceforge.net/ wxGlade] (англ.)
  • [xrced.sourceforge.net/ XRCed] (англ.)

Напишите отзыв о статье "WxPython"

Примечания

  1. www.wxwidgets.org/about/newlicen.htm  (англ.) — Разъяснение лицензии
  2. [support.google.com/drive/bin/answer.py?hl=en&answer=1716931&p=settings_licenses Открытые исходные компоненты и лицензии] (англ.). Google. Проверено 28 января 2013.

Литература

Noel, Rappin; Dunn, Robin. wxPython в действии = wxPython in Action. — Greenwich: Manning Publications, 2006. — P. 552. — ISBN 978-1-932394-62-7.

Ссылки

  • [wxpython.org n.org] — официальный сайт WxPython
  • [wiki.wxpython.org/wxPythonPit%20Apps Список приложений, разработаных с использованием WxPython]
  • [showmedo.com/videos/series?name=PythonWxPythonBeginnersSeries Учебные видеоролики для начала WxPython программирования] на showmedo


Отрывок, характеризующий WxPython

– Не чаем довезти! У доктора спросить надо. – И камердинер сошел с козел и подошел к повозке.
– Хорошо, – сказал доктор.
Камердинер подошел опять к коляске, заглянул в нее, покачал головой, велел кучеру заворачивать на двор и остановился подле Мавры Кузминишны.
– Господи Иисусе Христе! – проговорила она.
Мавра Кузминишна предлагала внести раненого в дом.
– Господа ничего не скажут… – говорила она. Но надо было избежать подъема на лестницу, и потому раненого внесли во флигель и положили в бывшей комнате m me Schoss. Раненый этот был князь Андрей Болконский.


Наступил последний день Москвы. Была ясная веселая осенняя погода. Было воскресенье. Как и в обыкновенные воскресенья, благовестили к обедне во всех церквах. Никто, казалось, еще не мог понять того, что ожидает Москву.
Только два указателя состояния общества выражали то положение, в котором была Москва: чернь, то есть сословие бедных людей, и цены на предметы. Фабричные, дворовые и мужики огромной толпой, в которую замешались чиновники, семинаристы, дворяне, в этот день рано утром вышли на Три Горы. Постояв там и не дождавшись Растопчина и убедившись в том, что Москва будет сдана, эта толпа рассыпалась по Москве, по питейным домам и трактирам. Цены в этот день тоже указывали на положение дел. Цены на оружие, на золото, на телеги и лошадей всё шли возвышаясь, а цены на бумажки и на городские вещи всё шли уменьшаясь, так что в середине дня были случаи, что дорогие товары, как сукна, извозчики вывозили исполу, а за мужицкую лошадь платили пятьсот рублей; мебель же, зеркала, бронзы отдавали даром.
В степенном и старом доме Ростовых распадение прежних условий жизни выразилось очень слабо. В отношении людей было только то, что в ночь пропало три человека из огромной дворни; но ничего не было украдено; и в отношении цен вещей оказалось то, что тридцать подвод, пришедшие из деревень, были огромное богатство, которому многие завидовали и за которые Ростовым предлагали огромные деньги. Мало того, что за эти подводы предлагали огромные деньги, с вечера и рано утром 1 го сентября на двор к Ростовым приходили посланные денщики и слуги от раненых офицеров и притаскивались сами раненые, помещенные у Ростовых и в соседних домах, и умоляли людей Ростовых похлопотать о том, чтоб им дали подводы для выезда из Москвы. Дворецкий, к которому обращались с такими просьбами, хотя и жалел раненых, решительно отказывал, говоря, что он даже и не посмеет доложить о том графу. Как ни жалки были остающиеся раненые, было очевидно, что, отдай одну подводу, не было причины не отдать другую, все – отдать и свои экипажи. Тридцать подвод не могли спасти всех раненых, а в общем бедствии нельзя было не думать о себе и своей семье. Так думал дворецкий за своего барина.
Проснувшись утром 1 го числа, граф Илья Андреич потихоньку вышел из спальни, чтобы не разбудить к утру только заснувшую графиню, и в своем лиловом шелковом халате вышел на крыльцо. Подводы, увязанные, стояли на дворе. У крыльца стояли экипажи. Дворецкий стоял у подъезда, разговаривая с стариком денщиком и молодым, бледным офицером с подвязанной рукой. Дворецкий, увидав графа, сделал офицеру и денщику значительный и строгий знак, чтобы они удалились.
– Ну, что, все готово, Васильич? – сказал граф, потирая свою лысину и добродушно глядя на офицера и денщика и кивая им головой. (Граф любил новые лица.)
– Хоть сейчас запрягать, ваше сиятельство.
– Ну и славно, вот графиня проснется, и с богом! Вы что, господа? – обратился он к офицеру. – У меня в доме? – Офицер придвинулся ближе. Бледное лицо его вспыхнуло вдруг яркой краской.
– Граф, сделайте одолжение, позвольте мне… ради бога… где нибудь приютиться на ваших подводах. Здесь у меня ничего с собой нет… Мне на возу… все равно… – Еще не успел договорить офицер, как денщик с той же просьбой для своего господина обратился к графу.
– А! да, да, да, – поспешно заговорил граф. – Я очень, очень рад. Васильич, ты распорядись, ну там очистить одну или две телеги, ну там… что же… что нужно… – какими то неопределенными выражениями, что то приказывая, сказал граф. Но в то же мгновение горячее выражение благодарности офицера уже закрепило то, что он приказывал. Граф оглянулся вокруг себя: на дворе, в воротах, в окне флигеля виднелись раненые и денщики. Все они смотрели на графа и подвигались к крыльцу.