로 GUI 응용 프로그램을 만드는 방법 이 기사는 원래 2016 년 5 월에 게시되었으며 새로운 정보로 업데이트되었습니다.
가 제 시간에 여행 대부분의 어떤 프로그래머 때 그들은 준비가 지난 몇 가지 기본적인 예가 나와 있습니다하고 구축하기 시작 그래픽 인터페이스를 자신의 프로그램입니다.
Python 에서 GUI 프로그래밍을 시작하는 단계는 대단히 복잡하지는 않지만 사용자가 몇 가지 선택을 시작해야합니다., 에 의해 그것의 성격으로 일반적인 프로그래밍 언어로 통역관에서 사용할 수 있는 모든 일반적인 운영을 시스템,파이썬은 상당히 독립적으로 선택 제공을 만들기 위한 그래픽 사용자 인터페이스가 있습니다.
다행히도,많은 옵션이 사용할 수 있는 프로그래머를 생성하고자하는 쉬운 방법에 대한 상호 작용하는 사용자에게 그 프로그램입니다. 바인딩은 Linux,Windows 및 Mac 의 기본 및 세 가지 모두에서 작동하는 많은 플랫폼을 포함하여 다양한 플랫폼의 여러 UI 프레임 워크에 대해 존재합니다.,
가기 전에 어떠한 추가,당신의 자신의 악마의 옹호하는 순간 질문:그것은 정말 이해를 위한 응용 프로그램을 전통적인 그래픽 사용자 인터페이스가요? 일부 프로그램의 경우 대답은 분명합니다. 하는 경우 응용 프로그램은 본질적으로 그래픽,그리고 중에 최적화하거나 의미하는 것에서 로컬로 실행되는 하나의 로컬 머신,다음 예에,당신은 아마도 고려해야 한 건물 데스크탑 GUI. 여러 번,이것은 당신이 디자인하고있는 것에 의해 명백해진다.
그러나 범용 프로그램의 경우 명령 행이나 웹 인터페이스를 계산하지 마십시오., 명령 라인은 많은 장점을 제공합니속,원격 액세스,재사용,scriptability,그리고 제어할 수 있는 더 중요한 응용 프로그램의 사용자가보다 그래픽 인터페이스,그리고 많은 같은 라이브러리를 클릭합,시멘트,그리고 절벽을 더 쉽게 만들 수 있게 해 주는 디자인의 좋은 명령행 프로그램입니다.
마찬가지로,웹 인터페이스,심지어 프로그램을 실행할 수 있 로컬에서 옵션을 수 있습을 고려 가치가있는 경우에 특히 생각하는 사용자가 애플리케이션을 호스팅하는 원격으로 프로젝트 장고,플라스크 또는 피라미드는 모든이 간단합니다., Pywebview 와 같은 라이브러리를 사용하여 웹 응용 프로그램 주위에 얇은 래퍼를 기본 GUI 창에 넣을 수도 있습니다.
또는 사용할 수 있는 프레임워크아 Pyforms 를 구축하는 일관된 환경을 웹에서,명령 라인,바탕 화면 하나로 모든 코드를 기초입니다.
아직도 GUI 를 만들고 싶습니까? 좋아요,여기 당신을 시작하게하는 몇 가지 환상적인 오픈 소스 라이브러리가 있습니다.,
PyQt,방법,그리고 Qt for Python
PyQt 를 구현하는 인기있는 Qt 라이브러리,그리고 그래서 잘 알고 있는 경우 Qt 개발에서 다른 언어로,아마도 개발에 대한 기본 응용 프로그램 KDE 또는 다른 Qt-기반 데스크탑 환경에,당신은 이미 잘 알고 있터 프로그램입니다. 이의 가능성을 열 응용 프로그램을 개발하는 파이썬에서는 익숙한 모양과 느낌을에 걸쳐 많은 플랫폼의 장점을 활용하는 도구와 지식의 큰 Qt 커뮤니티입니다.
Qt 는 개발자 커뮤니티에서 잘 확립되어 있으며이를 반영하는 툴링을 가지고 있습니다., 쓰 Python 응용 프로그램 Qt 의미에 액세스할 수 있관적이지는 않고,어느 특징은 디자이너드 코드를 생성한의 레이아웃을 당신의 응용 프로그램입니다.
PyQt 듀얼 라이센스에 따라 모두는 상업 및 GPL 라이센스와 Qt 프로젝트를 자신이고,기본을 지원하는 회사 PyQt 라이센스를 제공합 FAQ 이해하는 데 도움이 되는 이것이 무엇을 의미하는지에 대해 응용 프로그램입니다.
Python 과 함께 Qt 라이브러리를 사용하는 다른 옵션의 경우 LPGL 에서 사용할 수있는 Python 용 Qt(일반적으로 PySide2 라고도 함)를 고려하십시오.,
Tkinter
Python 용”표준”GUI 툴킷이라고 할 수있는 단일 패키지가 있다면 Tkinter 가 될 것입니다. Tkinter 는 래퍼 Tcl/Tk 인기 있는 그래픽 인터페이스 및 언어링 첫 번째 대중화 90 년대 초에. 의 이점을 선택하 Tkinter 은 자원의 광대 한 번호를 포함하여 책와 코드 샘플을 뿐만 아니라,사용자의 큰 커뮤니티 수 있습니다 누가 당신을 도울 수 있는 경우에 당신은 질문이 있습니다. 간단한 예는 시작하기 쉽고 상당히 사람이 읽을 수 있습니다.,
Tkinter 는 Tcl/Tk 의 BSD 라이센스 위에 Python 라이센스로 사용할 수 있습니다.
WxPython
WxPython 은 wxwidgets 크로스 플랫폼 GUI 라이브러리를 기본 C++에서 Python 으로 제공합니다. WxPython 은 호스트 시스템의 위젯을 사용하여 GUI 를 구성하기 때문에 다른 운영 체제에서 Tkinter 보다 조금 더 기본으로 보입니다. 뿐만 아니라 시작하기가 상당히 쉽고 성장하는 개발자 커뮤니티가 있습니다. 필요할 수 있는 번들로 wxPython 응용 프로그램,또는 다른 사용자가 설치하는 자신에 그것을,그것은 자동으로 설치되지 않습 Python.,
WxPython 은 osi 가 승인 한 상위 프로젝트의 wxWindows 라이브러리 라이센스를 사용합니다.
Python GTK+3
이전에 PyGTK 로 알려진 Python GTK+3 프로젝트는 Gtk 객체(windows,위젯 등)에 파이썬 바인딩을 제공합니다. GTK+는 그놈 데스크탑의 기초로 가장 유명하게 사용되지만 Linux,Windows 및 Mac 의 독립 실행 형 응용 프로그램에 사용할 수 있습니다. Python gtk+3 을 사용하면 Python 프로젝트에 동일한 프레임 워크를 사용할 수 있습니다.
Python GTK+3 을 사용할 때 GTK+자체 용으로 만들어진 동일한 개발 도구를 많이 사용할 수 있습니다., 특히 GTK+응용 프로그램 용 인터페이스 디자이너 인 Glade 가 포함됩니다. 인터페이스 설계에서 빈터로 저장된 XML 을 사용하는 GtkBuilder 개체에서의 응용 프로그램 코드,하지만 인터페이스을 사용하는 드래그-앤-드롭을 쉽게 만들은 동적 반응하는 인터페이스를 번역하지 않고 당신이 무엇을 참조로 당신의 마음에 레이아웃의 코드입니다.
Kivy
신속한 개발과 현대적인 장치를 염두에두고 제작 된 Kivy 는 Linux(Raspberry Pi 포함),Windows,Mac 및 Android 용 툴킷입니다., 프로젝트에 초점을 맞추고”혁신적인 사용자 인터페이스”,그리고 그것의 사용에 대한 멀티미디어 응용 프로그램,음악을 좋아 컨트롤러 응용 프로그램를 위한 휴대 전화 화이트보드 응용 프로그램을 전체 벽의 회의실,회의실 등이 있습니다.
Kivy 에는 QtCreator 및 Glade 와 같은 시각적 레이아웃 프로그램이 없지만 UI 레이아웃을 코드 객체와 연결하는 데 도움이되는 자체 디자인 언어를 사용합니다. 이렇게하면 응용 프로그램의 클래스와 함수를(정신적으로나 레이아웃 코드에서)쉽게 구획화 할 수 있습니다., 고급 프로그래밍 또한 호스트의 고급 프로그래밍 정원,저장소의 사용자가 생성한 위젯과 기능을 추가,그래서 당신이 생각하는 경우 무언가를 만드는 고급 프로그래밍을 자체 제공되지 않을 수 있습 그것은 이미 있습니다.장바구니에 의해서도 사용할 수있는 유일한 선택은 아닙니다. 에 대한 더 많은 옵션을 체크 아웃,”GUI 프로그래밍 파이썬”페이지에 공식 Python Software Foundation wiki,나열하는 수십 개의 다른 도구입니다. 솔루션은 많은 다른 위젯 라이브러리 및 FLTK,폭스,그리고 많은 다른 사람과 같은 GUI 도구에 파이썬을 바인딩 할 수 있습니다., 는 초보자해야하는 프로젝트 제공하는 부분적인 구현을,또는 그가 더 이상이 적극적으로 유지되고,거기에 많은 좋은 도구에 대한 다양한 상황입니다.
의 많은 옵션이있을 위한 전통적인 응용 프로그램을 창의 모양과 느낌을 그들의 부모 데스크탑 환경에 있지만,때로 수행할 수 있습 완전히 다른 무언가,예를 들어 비디오 게임이다. Pygame,pyglet 및 Panda3d 와 같은 이러한 상황을위한 훌륭한 라이브러리가 있습니다.
Leave a Reply