WxPython
![]() | |
توسعهدهنده(ها) | Robin Dunn Harri Pasanen |
---|---|
انتشار اولیه | ۱۹۹۸[۱] |
انتشار پایدار | 4.1.1[۲]
/ ۲۱ نوامبر ۲۰۲۰ |
مخزن | |
نوشتهشده با | پایتون / C++ |
سیستمعامل | چندسکویی |
مجوز | wxWindows License |
وبگاه |
wxPython یک بسته بندی برای API کراس پلت فرم GUI (که اغلب به آن "جعبه ابزار" گفته می شود). wxWidgets (که با زبان ++C نوشته می شود ) برای زبان برنامه نویسی پایتون است . این یکی از گزینه های جایگزین تکینتر است و به عنوان یک ماژول پسوند Python ( کد ماشین ) اجرا می شود.
مجوز
wxPython به عنوان یک بسته بندی ، از مجوز نرم افزار آزاد استفاده شده توسط wxWidgets ( مجوز wxWindows ) [۳] - و مورد تأیید بنیاد نرم افزار آزاد و ابتکار منبع باز است .
تاریخچه
wxPython زمانی که رابین دان (به انگلیسی: Robin Dunn) به GUI نیاز داشت که در سیستم های HP-UX و همچنین در ویندوز 3.1 اجرا شود ساخته شد. او در حالی که به راهحل های تجاری فکر میکرد، با اتصالات پایتون برای جعبه ابزار wxWidget روبهرو شد. بنابراین، او پایتون را آموخت و در مدت زمان کوتاهی با هری پسانن (به انگلیسی: Harri Pasanen) به یکی از توسعه دهندگان اصلی wxPython تبدیل شد که از همان اتصالات اولیه رشد میکرد.
اولین نسخه های بسته بندی با دست ایجاد شده اند. با این حال ، پس از مدت کوتاهی نگهداری و همگام سازی کد های پایه با نسخه های wxWidgets بسیار سخت شد. نسخه های بعدی با SWIG ایجاد شدند، که مقدار کار برای به روزرسانی بسته بندی را بسیار کاهش می دادند. اولین نسخه "مدرن" در سال 1998 منتشر شد.
نمونه
این یک کد ساده "Hello world" است که ایجاد دو شی اصلی در wxPython (شی پنجره اصلی و شی صفحه برنامه) را به تصویر می کشد و پس از آن کنترل را به سیستم رویداد محور منتقل میکند (با فراخوانی MainLoop()
) که قسمت تعاملی کاربر با برنامه را مدیریت می کند.
#!/usr/bin/env python3
import wx
app = wx.App(False) # برنامه جدیدی ایجاد کنید
frame = wx.Frame(None, title="Hello World") # صفحه یک پنجره سطح بالا است
frame.Show(True) # صفحه را نشان دهید
app.MainLoop()
این نمونه دیگری از دکمه خروج در wxPython با نمایش صفحه نمایش wxPython GUI در سیستم عامل ویندوز 10 است.

import wx
class WxButton(wx.Frame):
def __init__(self, *args, **kw):
super(WxButton, self).__init__(*args, **kw)
self.InitUI()
def InitUI(self):
pnl = wx.Panel(self)
closeButton = wx.Button(pnl, label='Close Me', pos=(20, 20))
closeButton.Bind(wx.EVT_BUTTON, self.OnClose)
self.SetSize((350, 250))
self.SetTitle('Close Button')
self.Centre()
def OnClose(self, e):
self.Close(True)
def main():
app = wx.App()
ex = WxButton(None)
ex.Show()
app.MainLoop()
if __name__ == "__main__":
main()
برنامه های توسعه یافته با wxPython
- بیتتورنت ، یک نرم افزار نظیر به نظیر
- چندلر ، یک مدیر اطلاعات شخصی
- ادیترا ، ویرایشگر متن چند سکویی
- گوگل درایو ، سمت دسکتاپ برای ذخیره سازی مبتنی بر ابر گوگل[۴]
- GRASS GIS ، یک سیستم اطلاعات جغرافیایی منبع باز و رایگان
- Métamorphose ، تغییر نام دسته ای
- Phatch ، پردازنده دسته عکس
- PsychoPy ، ابزار ایجاد آزمایش جهت تحقیقات علوم اعصاب و روانشناسی
پیوند به بیرون
- وبگاه رسمی
- پروژه ققنوس
- لیست برنامه های توسعه یافته با wxPython
- فیلم های آموزشی برای شروع برنامه نویسی wxPython در showmedo
- ↑ "wxPython 0.3 announcement on Yahoo Groups". Retrieved 2007-01-16.
- ↑ "wxPython Changelog". wxPython (به انگلیسی). 2020-11-21. Retrieved 2021-02-18.
- ↑ "Copyright notice". Retrieved 2009-02-27.
- ↑ "Open source components and licenses". Google. Retrieved 28 January 2013.