강의노트 Label

강의노트 • 조회수 690 • 댓글 0 • 작성 1년 전 • 수정 1일 전  
  • 윈도우 프로그램

레이블

레이블은 윈도우에서 정보를 보여주는 위젯이다. 레이블은 텍스트 혹은 이미지를 입력할 수 있다. 레이블은 주로 정적인 정보를 표시하지만, 변수를 연결하여 동적으로 정보를 변경할 수 있다.

레이블의 기본 입력형태는

Label(master, **option)

레이블의 주요 옵션들은

옵션 설명 옵션
text 텍스트
image 표시할 이미지(PhotoImage 객체를 사용)
compound 텍스트와 이미지의 배치 방식 top, bottom, left, right, center
textvariable tk.StringVar로 텍스트를 동적으로 바인딩
anchor 텍스트 정렬 n, s, e, w, center
justify 여러줄 텍스트 정렬 left, center, right
padding 안쪽 여백 (x, y 또는 튜플)
style 적용할 ttk.Style 이름

"텍스트 정보 전달"과 "파이썬을 정복하자!!!"라는 글은 폰트는 Arial, 크기는 30포인트로 작성하는 레이블을 생성한다.

from tkinter import *

win = Tk()
label1 = Label(win, text = '텍스트로 정보 전달')  #1
label2 = Label(win, text = '파이썬을 정복하자!!!', font=('arial', 30), fg = 'blue') #2
label1.pack() #3
label2.pack()

win.mainloop()
  1. 레이블을 생성하고 첫번째 텍스트 "텍스트로 정보 전달"을 써넣는다.
  2. 두번째 레이블을 생성하고 두번째 텍스트 "파이썬을 정복하자!!!"의 폰트를 arial, 크기는 30으로 잡고 글자 색은 파란색으로 한다.
  3. 작성된 레이블을 윈두우에 붙인다.

레이블에 그림 입히기

예제 1

from tkinter import *
from PIL import ImageTk, Image
win = Tk()
photo = Image.open('./../data/images/tiger.bmp')   #1
test = ImageTk.PhotoImage(photo)   #2
lbl = Label(win, image=test)   #3
lbl.pack()
win.mainloop()

  1. 특정 디렉터리에 있는 이미지를 불러온다.
  2. 이미지를 포토이미지로 바꿔준다.
  3. 레이블에 이미지를 넣는다.

예제 2

tkinter창의 레이블에 이미지를 로드한다. 이를 위해서는 Python Imaging Library(PIL)을 사용한다.

다양한 형식(ppm, png, jpeg, gif, tiff)의 이미지를 열수 있다.

이미지 파일 로드하는 방법은 다음과 같다.

from tkinter import *
from PIL import Image, ImageTk  #1

win = Tk()
win.geometry('200x200')
load = Image.open('./../data/images/clova_1.png')  #2
render = ImageTk.PhotoImage(load)  #3
lbl = Label(win, image=render) #4
lbl.place(x=10,y=10) #5
win.mainloop()

  1. 이미지를 읽기 위한 라이브러리를 불러온다. PIL에서 Image와 ImagTk를 불러온다.
  2. 이미지를 읽어온다. 이때 이미지('clova_1.png')는 프로그램과 같은 디랙토리에 있어야 한다.
  3. 읽어온 이미지를 포토이미지로 만든다.
  4. 포토이미지를 레이블에 연결한다.
  5. 레이블의 위치를 x축 왼쪽으로부터 10픽셀, y축 위에서 부터 10픽셀 떨어진 위치에 고정한다.

예제 3

이전 글
다음 글
댓글
댓글로 소통하세요.