Python 3-GUI 프로그래밍 (Tkinter)
Python은 그래픽 사용자 인터페이스 (GUI) 개발을위한 다양한 옵션을 제공합니다. 가장 중요한 기능은 다음과 같습니다.
Tkinter− Tkinter는 Python과 함께 제공되는 Tk GUI 툴킷에 대한 Python 인터페이스입니다. 이 장에서이 옵션을 살펴 보겠습니다.
wxPython− 이것은 wxWidgets GUI 툴킷을위한 오픈 소스 Python 인터페이스입니다. 여기 에서 WxPython에 대한 전체 자습서를 찾을 수 있습니다 .
PyQt− 이것은 또한 인기있는 크로스 플랫폼 Qt GUI 라이브러리를위한 Python 인터페이스입니다. TutorialsPoint는 PyQt에 대한 아주 좋은 튜토리얼을 가지고 있습니다 .
JPython − JPython은 Java 용 Python 포트로, Python 스크립트가 로컬 컴퓨터의 Java 클래스 라이브러리에 원활하게 액세스 할 수 있도록합니다. http://www.jython.org.
인터넷에서 찾을 수있는 다른 많은 인터페이스가 있습니다.
Tkinter 프로그래밍
Tkinter는 Python 용 표준 GUI 라이브러리입니다. Tkinter와 결합 된 Python은 GUI 애플리케이션을 생성하는 빠르고 쉬운 방법을 제공합니다. Tkinter는 Tk GUI 툴킷에 대한 강력한 객체 지향 인터페이스를 제공합니다.
Tkinter를 사용하여 GUI 애플리케이션을 만드는 것은 쉬운 작업입니다. 다음 단계를 수행하기 만하면됩니다.
Tkinter 모듈을 가져옵니다 .
GUI 애플리케이션 기본 창을 만듭니다.
위에서 언급 한 위젯 중 하나 이상을 GUI 애플리케이션에 추가합니다.
사용자가 트리거 한 각 이벤트에 대해 조치를 취할 기본 이벤트 루프를 입력하십시오.
예
#!/usr/bin/python3
import tkinter # note that module name has changed from Tkinter in Python 2 to tkinter in Python 3
top = tkinter.Tk()
# Code to add widgets will go here...
top.mainloop()
이것은 다음 창을 생성합니다-
Tkinter 위젯
Tkinter는 GUI 응용 프로그램에서 사용되는 버튼, 레이블 및 텍스트 상자와 같은 다양한 컨트롤을 제공합니다. 이러한 컨트롤을 일반적으로 위젯이라고합니다.
현재 Tkinter에는 15 가지 유형의 위젯이 있습니다. 다음 표에서 이러한 위젯과 간단한 설명을 제공합니다.
Sr. 아니. | 연산자 및 설명 |
---|---|
1 | 단추 버튼 위젯은 애플리케이션에 버튼을 표시하는 데 사용됩니다. |
2 | 캔버스 Canvas 위젯은 응용 프로그램에서 선, 타원, 다각형 및 직사각형과 같은 모양을 그리는 데 사용됩니다. |
삼 | 체크 버튼 Checkbutton 위젯은 여러 옵션을 확인란으로 표시하는 데 사용됩니다. 사용자는 한 번에 여러 옵션을 선택할 수 있습니다. |
4 | 기입 Entry 위젯은 사용자의 값을 수락하기위한 한 줄 텍스트 필드를 표시하는 데 사용됩니다. |
5 | 틀 프레임 위젯은 다른 위젯을 구성하는 컨테이너 위젯으로 사용됩니다. |
6 | 상표 Label 위젯은 다른 위젯에 한 줄 캡션을 제공하는 데 사용됩니다. 이미지를 포함 할 수도 있습니다. |
7 | 리스트 박스 Listbox 위젯은 사용자에게 옵션 목록을 제공하는 데 사용됩니다. |
8 | 메뉴 버튼 Menubutton 위젯은 애플리케이션에 메뉴를 표시하는 데 사용됩니다. |
9 | 메뉴 메뉴 위젯은 사용자에게 다양한 명령을 제공하는 데 사용됩니다. 이러한 명령은 Menubutton에 포함되어 있습니다. |
10 | 메시지 메시지 위젯은 사용자의 값을 수락하기위한 여러 줄 텍스트 필드를 표시하는 데 사용됩니다. |
11 | 라디오 버튼 Radiobutton 위젯은 여러 옵션을 라디오 버튼으로 표시하는 데 사용됩니다. 사용자는 한 번에 하나의 옵션 만 선택할 수 있습니다. |
12 | 규모 Scale 위젯은 슬라이더 위젯을 제공하는 데 사용됩니다. |
13 | 스크롤 바 스크롤바 위젯은 목록 상자와 같은 다양한 위젯에 스크롤 기능을 추가하는 데 사용됩니다. |
14 | 본문 텍스트 위젯은 텍스트를 여러 줄로 표시하는 데 사용됩니다. |
15 | 최상위 Toplevel 위젯은 별도의 창 컨테이너를 제공하는 데 사용됩니다. |
16 | 스핀 박스 Spinbox 위젯은 고정 된 수의 값에서 선택하는 데 사용할 수있는 표준 Tkinter Entry 위젯의 변형입니다. |
17 | PanedWindow PanedWindow는 가로 또는 세로로 배열 된 여러 개의 창을 포함 할 수있는 컨테이너 위젯입니다. |
18 | LabelFrame labelframe은 간단한 컨테이너 위젯입니다. 주요 목적은 복잡한 창 레이아웃을위한 스페이서 또는 컨테이너 역할을하는 것입니다. |
19 | tkMessageBox 이 모듈은 응용 프로그램에서 메시지 상자를 표시하는 데 사용됩니다. |
표준 속성
크기, 색상 및 글꼴과 같은 몇 가지 공통 속성이 지정되는 방법을 살펴 보겠습니다.
Dimensions
Colors
Fonts
Anchors
릴리프 스타일
Bitmaps
Cursors
기하학 관리
모든 Tkinter 위젯은 상위 위젯 영역 전체에 위젯을 구성하는 목적을 가진 특정 지오메트리 관리 방법에 액세스 할 수 있습니다. Tkinter는 팩, 그리드, 플레이스와 같은 지오메트리 관리자 클래스를 제공합니다.
pack () 메서드 -이 지오메트리 관리자는 위젯을 부모 위젯에 배치하기 전에 블록으로 구성합니다.
grid () Method- 이 기하학 관리자는 상위 위젯에서 테이블과 같은 구조로 위젯을 구성합니다.
place () 메서드 -이 지오메트리 관리자는 위젯을 부모 위젯의 특정 위치에 배치하여 구성합니다.