Tkinter의 Label(레이블) 위젯은 애플리케이션 창 안에 텍스트나 이미지를 표시하는 데 사용되는 기본 위젯입니다. 폰트, 색상, 커서 등 다양한 속성을 지정해 자유롭게 꾸밀 수 있으며, 특정 동작을 수행하는 함수를 정의한 뒤 마우스 이벤트에 바인딩하면 레이블을 클릭 가능한 객체로 만들 수도 있습니다.
예제 코드
다음 예제에서는 Label 위젯을 하나 생성하고, 레이블을 클릭하면 지정된 웹페이지로 이동하도록 구현합니다. 즉, 레이블이 일반적인 하이퍼링크처럼 동작하게 됩니다.
# 필요한 라이브러리 임포트
from tkinter import *
import webbrowser
# tkinter 프레임 인스턴스 생성
win = Tk()
win.geometry("750x250")
# 콜백 함수 정의
def callback(url):
webbrowser.open_new_tab(url)
# 링크를 표시할 Label 생성
link = Label(win, text="www.tutorialspoint.com", font=('Helvetica', 15), fg="blue", cursor="hand2")
link.pack()
link.bind("<Button-1>", lambda e: callback("https://www.tutorialspoint.com"))
win.mainloop()
코드 설명
webbrowser.open_new_tab(url): 전달된 URL을 새 탭으로 열어주는 함수입니다.fg="blue": 링크임을 직관적으로 알 수 있도록 글자색을 파란색으로 지정했습니다.cursor="hand2": 마우스를 올렸을 때 손가락 모양 커서가 표시되어 클릭 가능한 요소임을 나타냅니다.bind("<Button-1>", ...): 마우스 왼쪽 버튼 클릭 이벤트를 콜백 함수와 연결합니다.
실행 결과
위 코드를 실행하면 Label 위젯이 포함된 창이 화면에 나타납니다. 레이블 영역을 클릭하면 기본 웹 브라우저의 새 탭에서 "www.tutorialspoint.com" 사이트로 자동으로 이동합니다.
