Tkinter 위젯은 미리 정의된 동작을 함께 제공하는 애플리케이션의 기본 구성 요소입니다. 애플리케이션의 특정 기능을 구현하려면 키 이벤트를 위젯에 바인딩하여 원하는 동작을 연결해야 합니다.
이벤트를 위젯에 연결할 때는 bind('키', 콜백 함수) 메서드를 사용합니다. 여기서 '키'는 대상 이벤트를 지정하는 역할을 하고, 콜백 함수는 해당 이벤트가 발생했을 때 실제로 실행되는 함수입니다. 콜백 함수에 인수를 전달해야 하는 경우에는 람다(lambda) 함수를 활용하여 특정 위젯을 인수로 넘기고, 그 안에서 원하는 이벤트 처리 로직을 실행할 수 있습니다.
예제
다음 예제는 <Enter>(Return) 키를, 화면에 텍스트를 표시하는 함수와 바인딩하는 방법을 보여줍니다. 버튼을 클릭하거나 <Enter> 키를 누르면 콜백 함수가 실행되어 지정된 이벤트가 발생합니다.
#Import the Tkinter library
from tkinter import *
#Create an instance of Tkinter frame
win= Tk()
#Define the geometry
win.geometry("750x250")
#Define Event handlers with arguments
def event_show(event):
button.config(bg="red", fg= "white")
label.config(text="Hello World")
#Create a Label
label= Label(win, text="",font=('Helvetica 15 underline'))
label.pack()
#Create a frame
frame= Frame(win)
#Create Buttons in the frame
button= Button(frame, text="Click",command=lambda:event_show(button))
button.pack(pady=10)
frame.pack()
#Bind the function
win.bind('<Return>',lambda event:event_show(event))
win.mainloop()실행 결과
위 코드를 실행하면 버튼 하나가 포함된 창이 나타납니다. 이 버튼의 이벤트는 두 가지 방식으로 트리거할 수 있습니다. 바로 Enter 키 입력과 마우스 클릭입니다.

이제 Enter 키를 누르거나 버튼을 클릭하면 화면에 결과가 출력됩니다. 버튼의 배경색이 빨간색으로 변경되고, 라벨에는 'Hello World' 텍스트가 표시되는 것을 확인할 수 있습니다.