1. Tkinter 소개
파이썬에 내장되어 있는 Lightweight GUI 모듈
GUI 프레임워크나 툴킷에 비해 지원되는 위젯이 부족하고 UI 가 멋지지는 않지만
파이썬에 기본적으로 내장되어 있는 파이썬 표준 라이브러리이기 때문에 간단하게 GUI 프로그램을 만들 수 있다.
2. 사용방법
from tkinter import * -> tkinter 라이브러리
- pack 방식
상대 위치 방식
가장 처음에 선언하면 제일 위에서부터 배치
- Grid 방식
위젯들을 테이블 레이아웃에 지정된 row,col에 놓기
2.1 윈도우 creation 하는 방법
from tkinter import *
window = Tk()
window.title("Gomming's Automation Tool")
window.mainloop()
2.2 격자 배치 관리자
from tkinter import *
window = Tk()
l1 = Label(window, text="화씨")
l2 = Label(window, text="섭씨")
l1.grid(row = 0, column = 0)
l2.grid(row = 1, column = 0)
e1 = Entry(window)
e2 = Entry(window)
e1.grid(row = 0, column =1)
e2.grid(row = 1, column = 1)
b1 = Button(window,text="화씨 -> 섭씨")
b2 = Button(window,text="섭씨 -> 화씨")
b1.grid(row=2, column = 0)
b2.grid(row= 2, column = 1)
window.mainloop()
2.3 화씨 섭씨 온도 계산
from tkinter import *
def process():
temperature = float(e1.get())
mytemp = (temperature-32)*5/9
e2.insert(0,str(mytemp))
window = Tk()
l1 = Label(window, text="화씨", font = 'helvetica 16 italic')
l2 = Label(window, text="섭씨", font = 'helvetica 16 italic')
l1.grid(row = 0, column = 0)
l2.grid(row = 1, column = 0)
e1 = Entry(window,bg = "blue",fg = "green") # 폰트 색
e2 = Entry(window,bg = "blue",fg = "white")
e1.grid(row = 0, column =1)
e2.grid(row = 1, column = 1)
b1 = Button(window,text="화씨 -> 섭씨",command = process)
b2 = Button(window,text="섭씨 -> 화씨")
b1.grid(row=2, column = 0)
b2.grid(row= 2, column = 1)
window.mainloop()
<실행결과>
2.4 이미지 표시 프로그램
- PhotoImage를 사용해서 파일을 가져오고 라벨로 그려줌
- 버튼을 누르면 함수 호출되면서 이미지 변경.
from tkinter import *
def change_img():
path = inputBox.get()
img = PhotoImage(file = "changed.png")
imageLabel.configure(image = img)
imageLabel.image = img
window = Tk()
photo = PhotoImage(file ="wf.png")
#윈도우에 이미지 라벨 그려주기
imageLabel = Label(window, image = photo)
imageLabel.pack()
inputBox = Entry(window)
inputBox.pack()
button = Button(window,text="Submit", command = change_img)
button.pack()
window.mainloop()
'Data Science' 카테고리의 다른 글
[Python] Pandas의 기본 사용법 (0) | 2021.11.28 |
---|---|
[Python] Numpy 기본 개념과 사용방법 (0) | 2021.11.28 |
[Python] PIL,Pillow 라이브러리 사용 (0) | 2021.11.22 |
[1일차] Python 기초 실습 문제 (0) | 2021.11.18 |
[1일차] 개발 환경 설정, python 기본 문법 (0) | 2021.11.15 |