Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

위젯에 인수가 있는 함수를 바인딩하는 Tkinter

<시간/>

Tkinter 위젯은 사전 정의된 작업과 함께 제공되는 빌딩 블록입니다. 애플리케이션의 특정 기능을 처리하기 위해 일부 위젯에 키를 바인딩합니다.

bind('key', callback function)를 사용하여 이벤트를 위젯에 바인딩할 수 있습니다. 방법. 키는 특정 이벤트를 대상으로 하는 이벤트를 나타내는 반면 호출 가능한 함수는 이벤트를 활성화합니다. 콜백 함수를 생성하기 위해 특정 위젯을 인수로 전환한 다음 특정 이벤트를 추가합니다.

예시

키를 창에 일부 텍스트를 표시하는 기능과 결합해야 하는 예를 들어 이를 이해합시다. 버튼을 클릭하거나 키를 누를 때마다 콜백 함수가 실행되고 이벤트가 발생합니다.

#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 Key의 두 가지 방법을 통해 트리거될 수 있습니다. 및 클릭 이벤트 .

위젯에 인수가 있는 함수를 바인딩하는 Tkinter

이제 Enter 키를 누르거나 버튼을 클릭하여 화면에 출력을 표시합니다.