Tkinter는 강력하고 견고한 데스크톱 애플리케이션을 구축할 수 있도록 다양한 내장 함수, 위젯, 메서드를 제공하는 툴킷 라이브러리입니다. 그중 Button 위젯은 사용자가 버튼을 손쉽게 만들고, 각종 동작을 수행할 수 있게 도와줍니다. 또한 bind("button", callback) 메서드를 활용하면 버튼에 특정 이벤트나 콜백 함수를 연결(바인딩)할 수도 있습니다.
예제 코드
다음 예제는 사용자가 <Enter> 키를 누를 때마다 화면에 메시지를 출력하는 함수를 만드는 방법을 보여줍니다. <Enter> 키를 함수와 연결하려면 bind("<Return>", callback) 메서드를 사용하면 됩니다.
# 필요한 라이브러리 임포트
from tkinter import *
# tkinter 프레임 또는 윈도우 인스턴스 생성
win = Tk()
# 윈도우 크기 설정
win.geometry("700x350")
# 메시지를 출력하는 함수 정의
def print_msg():
Label(win, text="Hello World!", font=('11')).pack()
# 버튼 위젯을 생성하고 지정한 함수와 바인딩
win.bind("", lambda e: print_msg())
button = Button(win, text="Click Me", command=print_msg)
button.pack()
win.mainloop()
실행 결과
위 코드를 실행하면 버튼이 하나 있는 창이 나타납니다. 버튼을 클릭하면 "Hello World!"라는 텍스트가 담긴 Label 위젯이 메인 창에 표시됩니다.

<Enter> 키를 눌러도 마찬가지로 동일한 결과가 출력됩니다. 즉, 버튼을 클릭하든 <Enter> 키를 누르든 두 가지 방식 모두 같은 함수를 호출하게 되는 것입니다. 이처럼 bind 메서드를 활용하면 마우스 클릭뿐 아니라 키보드 입력 등 다양한 이벤트에 유연하게 대응하는 UI를 구성할 수 있습니다.