tkinter 튜토리얼
tkinter 시작하기
수색…
비고
Tkinter ( " Tk Inter face")는 그래픽 사용자 인터페이스 (GUI)를 만들기위한 파이썬의 표준 크로스 플랫폼 패키지입니다. Tk 툴킷으로 기본 Tcl 인터프리터에 액세스 할 수 있습니다. Tk 툴킷 자체는 크로스 플랫폼, 다국어 그래픽 사용자 인터페이스 라이브러리입니다.
Tkinter는 파이썬을위한 유일한 GUI 라이브러리는 아니지만 표준으로 제공되는 GUI 라이브러리입니다. 파이썬에서 사용할 수있는 추가 GUI 라이브러리에는 wxPython , PyQt 및 kivy가 있습니다.
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), 단일 페이지 응용 프로그램 및 다중 페이지 응용 프로그램을 지원한다는 점에서 가장 유연합니다.