python
wxPython| 개발자 | 로빈 던 해리 파사넨 |
|---|---|
| 초기 릴리즈 | 전( |
| 안정된 릴리스 | 4.1.1[1] / 2020년 11월 , 전( |
| 저장소 | |
| 기입처 | C++ / Python |
| 운영 체제 | 크로스 플랫폼 |
| 면허증. | wxWindows 라이선스 |
| 웹 사이트 | wxpython |
wxPython은 파이썬 프로그래밍 언어용 크로스 플랫폼 GUI API(종종 "툴킷"이라고 함) wxWidgets(C++로 작성됨)의 래퍼입니다.그것은 Tkinter의 대안 중 하나이다.Python 확장 모듈(네이티브 코드)로 구현됩니다.
역사
1995년에 Robin Dunn은 HP-UX 시스템에 GUI 애플리케이션을 도입할 필요가 있었지만 단기간에 Windows 3.1을 실행할 수도 있었습니다.그는 크로스 플랫폼 솔루션이 필요했습니다.무료 솔루션과 상용 솔루션을 평가하던 중 그는 wxWidgets 툴킷 웹페이지(당시 wxWindows로 알려짐)에서 Python 바인딩을 발견했다.이것이 Dunn이 Python을 소개한 것입니다.Harri Pasanen 및 Edward Zimmerman과 함께 이러한 초기 바인딩을 wxPython 0.2로 [2]개발했습니다.
1998년 8월에 wxPython 버전 0.3이 출시되었습니다.wxWidgets 2.0용으로 구축되어 Win32 상에서 실행되었으며 [3]wxGTK 버전이 동작하고 있습니다.
포장지의 첫 번째 버전은 수작업으로 만들어졌습니다.단, 이 코드는 wxWidgets 릴리즈와 동기화된 상태로 유지하기가 어려워졌습니다.1997년까지 SWIG를 사용하여 버전이 생성되어 [2]래퍼 업데이트 작업이 크게 감소했습니다.
프로젝트 피닉스
2010년 프로젝트 피닉스가 시작되었습니다.wxPython 구현을 정리하고 그 과정에서 Python [4]3과 호환되도록 하기 위한 노력입니다.이 프로젝트는 wxPython의 새로운 구현으로 속도, 유지보수성 및 확장성 향상에 중점을 두고 있습니다.이전 버전의 wxPython과 마찬가지로 wxWidgets C++ 툴킷을 랩하여 wxWidgets [5]API의 사용자 인터페이스 부분에 대한 액세스를 제공합니다.
2017년 4.0.0a1 wxPython이 출시되면서 Project Phoenix 버전이 공식 버전이 [6]되었습니다.wxPython 4.x는 2022년 [7]6월 현재 개발 중인 버전입니다.
사용하다
wxPython을 사용하면 플랫폼 고유의 코드가 거의 필요하지 않은 크로스 플랫폼 GUI 애플리케이션에 Python을 사용할 수 있습니다.
예
이것은 간단한 "Hello world" 모듈로, wxPython(메인 창 개체와 응용 프로그램 개체)에서 두 개의 주요 개체를 생성한 후 (호출에 의해) 이벤트 구동 시스템에 제어를 전달합니다.MainLoop())는 프로그램의 사용자가 인식하는 부분을 관리합니다.
#!/usr/bin/env python3 수입품 wx 앱. = wx.앱.(거짓의) # stdout/stderr을 창으로 리디렉션하지 말고 새 앱을 만듭니다. 틀 = wx.틀(없음., 직함='헬로 월드') # 프레임은 최상위 창입니다. 틀.표시(진실의) # 프레임을 보여줍니다. 앱..메인 루프() 이것은 Windows 10 운영체제에서 wxPython GUI 디스플레이가 표시된 wxPython 닫기 버튼의 또 다른 예입니다.
수입품 wx 학급 Wx 버튼(wx.틀): 방어하다 __init__(자신, *args, **콰): 잘 하는 군요(Wx 버튼, 자신).__init__(*args, **콰) 자신.InitUI() 방어하다 InitUI(자신): pnl = wx.패널(자신) 닫기 버튼 = wx.단추(pnl, 라벨.='Close Me', 포스=(20, 20)) 닫기 버튼.바인드(wx.EVT_버튼, 자신.OnClose(OnClose)) 자신.세트 사이즈((350, 250)) 자신.SetTitle(설정 제목)('닫기 버튼') 자신.센터() 방어하다 OnClose(OnClose)(자신, e): 자신.가까운.(진실의) 방어하다 주된(): 앱. = wx.앱.() ex = Wx 버튼(없음.) ex.표시() 앱..메인 루프() 한다면 __name__ == "_메인__": 주된() 면허증.
wxPython은 래퍼로서 wxWidgets(wxWindows 라이센스)[8]에서 사용하는 것과 동일한 무료 소프트웨어 라이센스를 사용합니다. 이 라이센스는 Free Software Foundation 및 Open Source Initiative에서 승인했습니다.
wxPython으로 개발된 애플리케이션
- 챈들러, 개인정보 매니저
- Dropbox 클라우드 기반[9] 스토리지용 데스크톱 클라이언트
- Editra, 멀티플랫폼텍스트 에디터
- Google Drive, Google 클라우드 기반 스토리지[10] 시스템용 데스크톱 클라이언트
- GRASS GIS, 무료 오픈 소스 지리 정보 시스템
- 배치 리네머인 메타모르포스
- Patch, 포토 배치 프로세서
- PlayOnLinux 및 PlayOnMac, 와인 프런트 엔드
- PsychoPy, 신경과학 및 심리학 연구를 위한 실험 창조 도구
레퍼런스
인용문
- ^ "wxPython Changelog". wxPython. 2020-11-21. Retrieved 2021-02-18.
- ^ a b Team, The wxPython (2017-07-14). "wxPython History". wxPython. Retrieved 2022-06-25.
- ^ "Yahoo! Groups : python-announce-list Messages :Message 95 of 1083". 2001-03-12. Archived from the original on 12 March 2001. Retrieved 2022-06-25.
- ^ "Goals of Project Phoenix". Retrieved 2016-03-17.
- ^ "Project Phoenix readme file on GitHub". Retrieved 2014-01-01.
- ^ Robin (2017-04-16). "wxPython 4.0.0a1 Release". wxPython. Retrieved 2022-06-25.
- ^ Team, The wxPython (2020-11-21). "wxPython 4.1.1 Released". wxPython. Retrieved 2022-06-25.
- ^ "Copyright notice". Retrieved 2009-02-27.
- ^ "6 lessons from Dropbox one million files saved every 15 minutes".
- ^ "Open source components and licenses". Google. Retrieved 28 January 2013.
원천
- Rappin, Noel; Dunn, Robin (March 1, 2006). wxPython in Action. Greenwich: Manning Publications. p. 552. ISBN 978-1-932394-62-7.
추가 정보
- Precord, Cody (December 2010). wxPython 2.8 Application Development Cookbook. Greenwich: Packt Publishing. p. 308. ISBN 978-1-84951-178-0.
