Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Tkinter 창에 Enter 키 이벤트 바인딩하는 방법

Tkinter의 이벤트는 프로그램 실행 중에 처리되며, 버튼이나 키보드 키와 같은 요소에 이벤트를 바인딩하면 애플리케이션에서 해당 이벤트의 우선순위를 제어할 수 있습니다.

Tkinter 창에서 Enter 키를 특정 이벤트에 연결하려면 bind('<Return>', 콜백함수) 형태로 키 이름과 콜백 함수를 인자로 지정하면 됩니다. 키가 이벤트에 바인딩되면 해당 이벤트를 완전히 제어할 수 있습니다.

예제 코드

# 필요한 라이브러리 임포트
from tkinter import *
from PIL import Image, ImageTk

# Tkinter 프레임(윈도우) 인스턴스 생성
win = Tk()

# 윈도우 크기 설정
win.geometry("700x350")

def show_msg(event):
    label["text"] = "최대 50% 할인 판매!"

# 라벨 위젯 생성
label = Label(win, text="Enter 키를 누르세요", font="TkMenuFont 20")
label.pack(pady=30)

# Enter 키를 윈도우에 바인딩
win.bind('<Return>', show_msg)

win.mainloop()

실행 결과

위 코드를 실행하면 윈도우가 나타나며, Enter 키를 누르면 바인딩된 이벤트가 트리거됩니다.

처음 화면에는 "Enter 키를 누르세요"라는 안내 문구가 표시됩니다.

이제 Enter 키를 누르면 라벨의 텍스트가 "최대 50% 할인 판매!"로 변경되는 것을 확인할 수 있습니다.

핵심 정리

  • <Return>은 키보드의 Enter 키를 의미하는 Tkinter 이벤트 문자열입니다.
  • bind() 메서드의 첫 번째 인자에는 이벤트 문자열을, 두 번째 인자에는 호출될 콜백 함수를 전달합니다.
  • 콜백 함수는 반드시 event 매개변수를 하나 받아야 하며, 이 매개변수를 통해 발생한 이벤트의 세부 정보에 접근할 수 있습니다.