Raspberry Pi에서 Python 개발을위한 권장 GUI 툴킷


31

나는 Pi를 사용하여 딸 Python (그리고 어느 정도 나에게)을 가르치고 있으며, 우리는 지금까지 좋은 시간을 보냈습니다. 그러나 CLI는 우리를 지금까지 데려 갈 수 있습니다. 다른 툴킷, 특히 wx , QtGTK를 살펴보기 시작했습니다 . Raspberry Pi와 관련된 많은 정보를 찾을 수는 없지만 일반적으로 Linux에 대한 바인딩이 큰 것 같습니다. 파이썬 바인딩이 좋은 한 다른 툴킷에도 열려 있습니다.

파이 에이 중 하나를 코딩 한 경험이 있습니까? apt-get필요한 패키지를 설치하기 위해 실행해야하는 간단한 명령이 있습니까? 더 나은 아직, 재고 Raspbian 이미지와 함께 사용할 수있는 툴킷이 있습니까?

참고 : Mono는 하드 플로트 ABI 문제로 인해 아치가 유혹을 받고 있지만 현재는 문제없이 Raspbian을 사용하고 있습니다.

답변:


22

Tkinter를 권장합니다 .Python의 표준 GUI 라이브러리이며 결과적으로 이미 설치되어 있습니다. IDLE IDE (Raspbian 이미지에 포함되어 있음)는 Tkinter를 지원할뿐만 아니라 자체적으로 Tkinter 앱입니다. 또한 대부분의 Python 서적에는 최소한 Tkinter를 사용한 GUI 작성에 관한 장이 포함되어 있습니다. 웹 리소스를 선호한다면 Pythonware의 Tkinter tutorial 을 확인하십시오 . 추가 정보와 리소스는 Python.org의 Tkinter 페이지 에서 찾을 수 있습니다 .


Tkinter 튜토리얼의 링크는 두 번째 페이지에 대한 링크입니다. 여기에 누군가가 원한다면 소개가 있습니다. pythonware.com/library/tkinter/introduction/whats-tkinter.htm
익명 펭귄

2

나는 15 년 전에 Tkinter와 약간의 시간을 보냈고 몇 년 후에 wx로 무언가를했습니다. 일을 할 수 있었지만 둘 다 지루한 것으로 나타났습니다. 나는 마지막으로 사용한 이후로 상황이 얼마나 개선되었는지 또는 내 자신의 학습이 얼마나 쉽게 오늘처럼 보일지 모르겠습니다.

그러나 지난 몇 개월 동안 PyQt 호환 프레임 워크 인 PySide를 탐색했습니다 . 컴포넌트 (푸시 버튼, 다이얼, 슬라이더, 체크 상자 등)를 드래그 앤 드롭하여 확장자가 ".ui"인 XML 파일로 저장할 수 있는 Qt Designer 가 매우 유용합니다 . 그런 다음 pyside-uic이이 를 읽고 Python 코드를 생성합니다. 훌륭한 튜토리얼 비디오가 있습니다.

Bo Milanovich는 방금 완료 한 Udemy에 대한 29 개의 비디오 시리즈 (15 달러)를 보유하고 있지만 Qt 사이트에는 다음과 같은 비용이 무료로 제공됩니다 : http://wiki.qt.io/PySide_Video_Tutorials . Bo는 그의 수업에서 약간 "산만 해"져 접선을 떠날 수 있지만, 각각 30 분 평균 29 개의 수업에 대해 $ 15의 가치가있었습니다.

또한 최근에 " Qt Designer-PyQt with Python GUI Programming tutorial "( https://www.youtube.com/watch?v=Dmo8eZG5I2w )도 발견했습니다. Qt, Tkinter 및 Kivy https://pythonprogramming.net/gui-development-tutorials/에 대한 소개를 제공하는 발표자 사이트로 연결되었습니다 . 나는 그것들을 보지 않았지만 내가 본 Qt Designer 튜토리얼을 바탕으로 pythonprogramming.net에있는 것들을 고대하고 있습니다.

공식 PyQt 및 PySide 문서 중 일부는 약간 부족합니다. 그것의 대부분은 원래 Qt 문서의 일부 자동화 프로세스를 통해 변환되었으며, 비트는 번역에서 손실되었습니다. 따라서 https://pyside.github.io/docs/pyside/ 의 문서 가 부족한 경우 http://doc.qt.io/ 의 문서를 참조 하여 읽은 내용을 Python으로 번역 하십시오 . 그러나 먼 길을 걸리므로 먼저 자습서를보십시오.

몇 년 전에 GTK를 간단히 살펴 보았습니다. 또한 디자이너가 있습니다. 나는 그 길을 다시 내려가는 것을 고려했지만, 내가 관심있는 것들에 대해서는 Qt 뒤에 더 많은 에너지가있는 것처럼 보였습니다. 터치 스크린 작업에 권장되는 것처럼 Kivy를 탐색하기 시작했습니다.

조금 늦었지만 이것이 도움이되기를 바랍니다.


1

tkinter는 Python 개발주기 초기에 사용 된 TCL의 GUI 확장입니다. 유휴 Python 명령 셸은 tkinter를 사용합니다.

GUI의 경우 xorg-x11 서비스 (데몬) 및 프리젠 테이션 관리자가 필요합니다. X11은 디스플레이 장치 드라이버가있는 곳입니다. 이름은 xorg-x11-drv-xxxxx로 시작합니다. X11은 HID (Human Interface Device) 컨트롤러입니다. 마우스, 태블릿, 키보드 등도 x11 서비스에 연결됩니다.

프리젠 테이션 매니저는 Gnome이지만 그 중 1/2 이상이 있습니다. 나는 Xfce가 더 가벼운 것임을 이해합니다.

GUI Python 개발 도구의 경우 DrPython (코드 편집, 구문 검사 및 디버깅)을 사용합니다. wxGlade는 Visual Basic과 매우 유사한 Python 끌어서 놓기 GUI 개발 환경입니다. 둘 다 wxPython 애플리케이션이며 루트 권한이 필요하지 않습니다. 그들은 sourceforge.net에서 다운로드 할 수 있습니다

R-Pi-3b가 주문되었습니다. 내 손녀에게는 이미 하나가 있으므로 주문이 이루어졌습니다. 저는 60 년 이상, 파이썬에서 10 년 이상 프로그래밍을 해왔습니다. 저는 홈 오토메이션을위한 커스텀 언어와 클라이언트 / 서버 앱을위한 많은 컴파일러를 개발했습니다.


1

raspberry pi 2,3에서 실행되는 GUI 응용 프로그램을 개발했습니다. tkinter와 pyQt4를 모두 사용했습니다.

그러나 tkinter와 pyQt4 모두 위젯을 배치하기 위해 더 많은 코딩이 필요하고 레이아웃 정렬에 많은 시간이 걸립니다.

내 제안에서 QT4 디자이너를 사용하여 UI를 만듭니다. 드래그 앤 드롭 기능으로 인해 매우 쉽습니다. 나중에 pyuic4 명령을 사용하여 .ui 파일에서 python 스크립트 .py를 생성 할 수 있으며 qt4 디자이너를 사용하여 Ui에 이미지를 추가 할 수도 있습니다 나중에 pyrcc 명령을 사용하여 변환 해야하는 resosurce.rc 파일을 만들어야합니다.

사용 가능한 여러 자습서가 있습니다.


0

appJar를 살펴보십시오. 위에서 언급 한 QT4 Designer의 끌어서 놓기 기능은 없지만, 달성하려는 작업에 따라 몇 분 안에 멋진 GUI를 작성할 수 있습니다. 웹 페이지의 문서에는 많은 훌륭한 예가 나와 있습니다. http://appjar.info/


-2

pygtk는 최고이며 견고하고 안정적이지만 초보자에게는 쉽습니다.


5
일부 추가 세부 정보는이 답변을 개선하는 데 도움이 될 것입니다 (다른 대안과 비교하여 가장 좋게 만드는 방법, 설치 방법, 쉬운 방법).
Steve Robillard
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.