수색…


비고

Tkinter ( " Tk Inter face")는 그래픽 사용자 인터페이스 (GUI)를 만들기위한 파이썬의 표준 크로스 플랫폼 패키지입니다. Tk 툴킷으로 기본 Tcl 인터프리터에 액세스 할 수 있습니다. Tk 툴킷 자체는 크로스 플랫폼, 다국어 그래픽 사용자 인터페이스 라이브러리입니다.

Tkinter는 파이썬을위한 유일한 GUI 라이브러리는 아니지만 표준으로 제공되는 GUI 라이브러리입니다. 파이썬에서 사용할 수있는 추가 GUI 라이브러리에는 wxPython , PyQtkivy가 있습니다.

Tkinter의 가장 큰 장점은 편재성과 단순성입니다. 대부분의 플랫폼 (Linux, OSX, Windows)에서 기본적으로 작동하며 가장 일반적인 작업 (단추, 레이블, 그리기 캔버스, 여러 줄 문자 등)에 필요한 다양한 위젯을 제공합니다.

학습 도구로서, tkinter에는 이름이 지정된 글꼴, 바인드 태그 및 변수 추적과 같은 GUI 툴킷간에 고유 한 몇 가지 기능이 있습니다.

파이썬 2와 3의 차이점

Tkinter는 python 2와 python 3 사이에서 크게 변하지 않았습니다. 가장 큰 차이점은 tkinter 패키지와 모듈의 이름이 변경된다는 것입니다.

파이썬 2.x에서 가져 오기

python 2.x에서 tkinter 패키지의 이름은 Tkinter 이고 관련 패키지는 고유 한 이름을 가지고 있습니다. 예를 들어, 다음은 Python 2.x의 일반적인 import 문 집합입니다.

import Tkinter as tk
import tkFileDialog as filedialog
import ttk

파이썬 3.x에서 가져 오기

기능이 파이썬 2와 3 사이에서 많이 변하지는 않았지만, 모든 tkinter 모듈의 이름이 변경되었습니다. 다음은 python 3.x의 일반적인 import 문 집합입니다.

import tkinter as tk
from tkinter import filedialog
from tkinter import ttk

더 읽을 거리

버전

Tcl

번역 출시일
8.6 2016-07-27
8.5 2016-02-12
8.4 2013-06-01
8.3 2002-10-18
8.2 1999-12-16
8.1 1999-05-26
8.0 1999-03-09

파이썬

번역 출시일
3.6 2016-12-23
3.5 2015-09-13
3.4 2014-03-17
3.3 2012-09-29
3.2 2011-02-20
3.1 2009-06-26
3.0 2008-12-03
2.7 2010-07-03
2.6 2008-10-02
2.5 2006-09-19
2.4 2004-11-30
2.3 2003-07-29
2.2 2001-12-21
2.1 2001-04-15
2.0 2000-10-16

설치 또는 설정

Tkinter에는 Mac OS X 및 Windows 플랫폼 용 Python 설치 프로그램 바이너리가 사전 설치되어 제공됩니다. 따라서 Mac OS X 또는 Windows 플랫폼 용 공식 바이너리 에서 Python을 설치하면 Tkinter를 사용하는 것이 좋습니다.

데비안 버전의 리눅스에서는 다음 명령을 사용하여 수동으로 설치해야합니다.

파이썬 3

sudo apt-get python3-tk 설치하기

파이썬 2.7 용

sudo apt-get python-tk 설치하기

yum 설치 프로그램을 사용하는 Linux 배포판은 다음 명령을 사용하여 tkinter 모듈을 설치할 수 있습니다.

냠 설치 tkinter

설치 확인

Tkinter가 성공적으로 설치되었는지 확인하려면 Python 콘솔을 열고 다음 명령을 입력하십시오 :

import tkinter as tk # for Python 3 version

또는

import Tkinter as tk # for Python 2.x version

위의 명령이 오류없이 실행되면 Tkinter를 성공적으로 설치했습니다.

Tkinter 버전을 확인하려면 Python REPL에 다음 명령을 입력하십시오 :

파이썬 3.X 용

import tkinter as tk
tk._test()

파이썬 2.X 용

import Tkinter as tk
tk._test()

참고 : Tkinter as tk 임포트하는 것은 필수 사항은 아니지만, 버전 간 일관성을 유지하는 데 도움이되므로 좋은 방법입니다.

안녕, 세상! (최소)

고전적인 "Hello, World!"를 만들어 tkinter에 대한 기본 지식을 테스트 해 봅시다. 프로그램.

먼저 tkinter를 가져와야합니다.이 버전은 버전에 따라 다릅니다 ( "Python 2와 3의 차이점"에 대한 비고 섹션 참조).

파이썬 3에서 모듈 tkinter 는 소문자 t tkinter 집니다.

import tkinter as tk

파이썬 2에서 모듈 Tkinter 는 대문자 T :

import Tkinter as tk 

as tk 로 사용 as tk 것은 꼭 필요한 것은 아니지만이 예제의 나머지 부분은 두 버전 모두에서 동일하게 작동합니다.

이제 tkinter 모듈을 가져 왔으므로 Tk 클래스를 사용하여 응용 프로그램의 루트를 만들 수 있습니다.

root = tk.Tk()

이것은 응용 프로그램의 창으로 작동합니다. ( 추가 창은 대신 Toplevel 인스턴스 여야 함)

이제 창이 생겼으므로 Label 사용하여 텍스트를 추가해 봅시다.

label = tk.Label(root, text="Hello World!") # Create a text label
label.pack(padx=20, pady=20) # Pack it into the window

응용 프로그램이 준비되면 mainloop 메소드를 사용하여 응용 프로그램을 시작할 수 있습니다 ( 기본 이벤트 루프 입력).

root.mainloop()

이것은 닫히는 창에 의해 멈출 때까지 또는 root.destroy() 와 같은 콜백에서 종료 함수를 호출 할 때까지 응용 프로그램을 열고 실행합니다.

함께 모아서:

import tkinter as tk # Python 3.x Version
#import Tkinter as tk # Python 2.x Version

root = tk.Tk()

label = tk.Label(root, text="Hello World!") # Create a text label
label.pack(padx=20, pady=20) # Pack it into the window

root.mainloop()

그리고 이것과 같은 것이 나타날 것입니다 :

창문 창

안녕, 세상! (모듈 식, 객체 지향형)

import tkinter as tk

class HelloWorld(tk.Frame):
    def __init__(self, parent):
        super(HelloWorld, self).__init__(parent)

        self.label = tk.Label(self, text="Hello, World!")
        self.label.pack(padx=20, pady=20)
        
if __name__ == "__main__":
    root = tk.Tk()

    main = HelloWorld(root)
    main.pack(fill="both", expand=True)

    root.mainloop()

참고 : 루트 창을 포함하여 모든 tkinter 위젯을 상속 할 수 있습니다. tkinter.Frame 에서 상속받은 것은 적어도 여러 문서 인터페이스 (MDI), 단일 문서 인터페이스 (SDI), 단일 페이지 응용 프로그램 및 다중 페이지 응용 프로그램을 지원한다는 점에서 가장 유연합니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow