1. Tkinter 란 무엇인가
python에서 windows용 GUI(Graphic User Interface) 화면을 만들어 주는 라이브러리 모듈이다. 원래 GUI용 스크립트언어로 유명한 Tcl/Tk 를 python에서 사용할 수 있도록 만들어 놓은 라이브러리 모듈이다.
2. Tkinter의 인스톨
Windows의 경우에는 python을 인스톨 하면 표준 라이브러리로 함께 인스톨 된다. 하지만, pycharm에는 인스톨 되지 않는 경우가 있으니 사용시 에러가 발생할 경우엔 모듈을 수동으로 인스톨 해준다(두가지 방법이 있다).
1) 패키지 관리자로 인스톨
pycharm 좌측 하단부에 있는 "python package"를 선택하고, 검색란에 "pytk"를 입력하면 다음과 같이 설치할 모듈 옆에 "설치" 라는 링크가 표시된다(미 설치일 경우). 링크를 클릭해서 설치한다.
2) 터미널에서 인스톨
pycharm 좌측 하단부에 있는 "terminal"을 선택하고, "pip install pytk" 를 입력하여 설치를 시작한다
설치가 완료된후 다음의 코드를 실행해서 설치가 잘 되었는지 확인해 본다.
터미널에서 "python -m pytk"라고 입력하고 엔터를 치면 다음과 같은 윈도우가 표시된다.
3. Tkinter 로 작성할 수 있는 위젯
기존의 윈도우 어플리케이션에서 사용할 수 있는 위젯(오브젝트)의 대부분을 작성할 수 있다. 예를 들어 다음과 같은 위젯을 작성할 수 있다.
위젯명 | 클래스명 | 기능 |
프레임 | Frame | 복수의 위젯을 모아서 설치하는 프레임을 작성한다 |
레이블 | Label | 문자열이나 이미지를 표시한다 |
메시지 | Message | 복수행의 문자열을 표시한다 |
버튼 | Button | 버튼을 만든다 |
라디오 버튼 | Radiobutton | 라디오 버튼을 만든다 |
첵크 버튼 | Checkbutton | 첵크 버튼 |
리스트 박스 | Listbox | 리스트 박스를 만든다 |
스크롤 바 | Scrollbar | 스크롤 바를 만든다 |
스케일 | Scale | 스케일(눈금자)을 만든다 |
엔트리 | Entry | 1행의 문자열 입력 박스를 만든다. |
메뉴 | Menu | 메뉴를 만든다 |
메뉴 버튼 | Menubutton | 메뉴 버튼을 만든다 |
비트 맵 | Bitmap | 비트 맵 이미지를 표시한다 |
캔버스 | Canvas | 캔버스를 만든다 |
텍스트 | Text | 복수행의 텍스트 입력 박스를 만든다 |
레이블 프레임 | LabelFrame | 레이블이 붙어있는 프레임을 만든다 |
스핀 박스 | Spinbox | 스핀 박스를 만든다 |
페인 윈도우 | PanedWindow | 페인 윈도우(사이즈 변경 가능한)를 만든다 |
4. ktinter sample code
간단한 샘플 코드를 소개한다.
import sys
import tkinter
root = tkinter.Tk()
root.title(u"Tkinter Sample Program")
root.geometry("400x300")
root.mainloop()
이 코드를 실행하면 크기가 400x300인 윈도우가 표시된다.
앞으로 각 위젯을 사용법에 대해서 설명해 가기로 한다.