아주 간단 하고 사용 하기 좋 은 Python 그래 픽 인터페이스 라 이브 러 리(PysimpleGUI)
그래 픽 인터페이스 라 이브 러 리 하면 TkInter,PyQt,PyGUI 등 유행 하 는 그래 픽 인터페이스 라 이브 러 리 를 생각 할 수 있 습 니 다.저도 사용 해 본 적 이 있 습 니 다.직관 적 인 느낌 은 이것 이 너무 어렵 다 는 것 입 니 다.인터넷 에 가서 demo 가 있 는 지 찾 아 보고 수정 한 결과 가 드 물 었 습 니 다.그 당시 에 저 는 이런 그래 픽 라 이브 러 리 의 공 부 를 포기 하고 vue+flask 형식 으로 브 라 우 저 웹 페이지 를 프로그램 인터페이스 로 사 용 했 습 니 다.왜냐하면 저 는 이것 을 할 줄 알 기 때문에 실현 하기 가 조금 번 거 롭 지만 빠 릅 니 다.
그럼 친구 가 물 어 봤 을 수도 있어 요.그래 픽 인터페이스 를 꼭 배 워 야 하나 요?
사실은 꼭 그렇지 는 않 습 니 다.만약 에 당신 이 쓴 프로그램 이 모두 자신 이 사용 하거나 다른 프로그래머 에 게 맞 춰 사용 하면 직접 명령 행 에서 호출 하면 됩 니 다.도형 인터페이스 를 전혀 배우 지 않 아 도 됩 니까?그럼 언제 배 워 야 돼 요?게임 을 하거나 다른 사람(비 기술자)을 위해 소프트웨어 도 구 를 만 들 려 면 그래 픽 인터페이스 를 배 워 야 합 니 다.저 는 후자 입 니 다.가끔 은 다른 사람 에 게 작은 도 구 를 써 달라 고 초 대 받 기 때문에 도형 인터페이스 체험 이 많이 좋 을 것 입 니 다.
오늘 말 할 이 라 이브 러 리 는 바로 PySimple GUI 로 GitHub 창고[1]에 5.1K 개의 star 가 있 고 20 일 전에 도 코드 를 제출 하 는 사람 이 있어 매우 뜨 거 웠 다 고 할 수 있다.
나 는 공식 문 서 를 보고 demo 를 찾 았 다.2 시간 동안 56 줄 의 코드 를 썼 고 도형 인터페이스 가 있 는 감시 도 구 를 해결 했다.다음 과 같다.
PysimpleGUI 가 저 를 가장 끌 어 당 기 는 부분 은 200 여 개의 예제 프로그램 이 있 고 일상적인 개발 수 요 를 거의 덮어 서 조금 만 수정 하면 사용 할 수 있 고 편리 하 다 는 것 입 니 다.
PysimpleGUI 내부 에는 tkinter,Qt(pyside 2),wxPython,Remi,Remi 가 브 라 우 저 지원 에 사용 되 기 때문에 코드 를 수정 하지 않 고 브 라 우 저 로 화면 을 옮 기기 쉽다.다음 그림:
그리고 저 를 가장 끌 어 당 기 는 것 은 간단 합 니 다.몇 분 안에 몇 줄 의 코드 를 사용 하면 사용자 정의 GUI 구 조 를 구축 할 수 있 고 초보 자 에 게 는 쉬 우 며 고급 사용자 에 게 는 충분 합 니 다.광범 위 한 문서.100 여 가지 내 장 된 색상 테마 가 있 고 200 여 개의 예제 프로그램[2]이 있 으 며 자주 업데이트 된다.만약 당신 이 Raspberry Pi 를 한다 면,이 라 이브 러 리 로 인 터 페 이 스 를 쓸 수도 있 습 니 다.당신 은 사용 하기 어렵다 고 말 했 습 니 다.
보통 PySimple GUI 프로그램 은 5 개의 부분 을 포함 합 니 다.다음 코드 의 설명 을 보십시오.
import PySimpleGUI as sg # Part 1 -
#
layout = [ [sg.Text("What's your name?")], # Part 2 -
[sg.Input()],
[sg.Button('Ok')] ]
#
window = sg.Window('Window Title', layout) # Part 3 -
# Display and interact with the Window
event, values = window.read() # Part 4 - window.read()
# Do something with the information gathered
print('Hello', values[0], "! Thanks for trying PySimpleGUI")
# Finish up by removing from the screen
window.close() # Part 5 -
위 코드 를 실행 하면 다음 그림 과 같은 프로그램 을 얻 을 수 있 습 니 다.이것 은 Hello World 와 유사 한 프로그램 일 뿐 입 니 다.PySimple GUI 는 더욱 강력 한 그래 픽 인터페이스 와 게임 인터페이스 도 만 들 수 있 습 니 다.
다 중 창
나 는 많은 새 프로그래머 들 이 발 버 둥 치 는 것 을 보 았 다.그들 이 선택 한 GUI 공구 꾸러미 에서 여러 개의 창 을 여 는 것 이 었 다.다행히도 PySimple GUI 는 이 동작 을 어떻게 수행 하 는 지 에 대한 설명 을 명 확 히 표시 했다.실제로 그들 은 두 가지 서로 다른'디자인 모델'로 이런 일 을 한다.
간단 한 접근 을 위해 두 개의 활동 창 만 보 여 드 리 겠 습 니 다.
# -*- coding: utf-8 -*-
# https://www.jianshu.com/u/69f40328d4f0
# https://github.com/china-testing/python-api-tesing
# https://china-testing.github.io/
# support q group: 630011153 144081101
import PySimpleGUI as sg
# Create some widgets
ok_btn = sg.Button('Open Second Window')
cancel_btn = sg.Button('Cancel')
layout = [[ok_btn, cancel_btn]]
# Create the first Window
window = sg.Window('Window 1', layout)
win2_active = False
# Create the event loop
while True:
event1, values1 = window.read(timeout=100)
if event1 in (None, 'Cancel'):
# User closed the Window or hit the Cancel button
break
if not win2_active and event1 == 'Open Second Window':
win2_active = True
layout2 = [[sg.Text('Window 2')],
[sg.Button('Exit')]]
window2 = sg.Window('Window 2', layout2)
if win2_active:
events2, values2 = window2.Read(timeout=100)
if events2 is None or events2 == 'Exit':
win2_active = False
window2.close()
window.close()
참고 자료[1]GitHub 창고:https://github.com/PySimpleGUI/PySimpleGUI
[2]200 여 개의 예시 프로그램:https://github.com/PySimpleGUI/PySimpleGUI/tree/master/DemoPrograms
아주 간단 하고 사용 하기 좋 은 Python 그래 픽 인터페이스 라 이브 러 리 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 Python 그래 픽 인터페이스 라 이브 러 리 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.