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()

ผลลัพธ์

การเรียกใช้โค้ดด้านบนจะแสดงหน้าต่างที่มีปุ่ม เหตุการณ์ปุ่มสามารถถูกทริกเกอร์ได้สองวิธี - ป้อนคีย์ และ คลิกกิจกรรม .

Tkinter ผูกฟังก์ชันด้วยอาร์กิวเมนต์กับวิดเจ็ต

ตอนนี้ให้กด Enter หรือคลิกปุ่มเพื่อแสดงผลลัพธ์บนหน้าจอ