Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฉันจะรับการเรียกกลับของเหตุการณ์ได้อย่างไรเมื่อมีการแก้ไขวิดเจ็ต Tkinter Entry


โดยทั่วไปแล้วฟังก์ชันการโทรกลับใน Tkinter จะใช้เพื่อจัดการเหตุการณ์เฉพาะที่เกิดขึ้นในวิดเจ็ต เราสามารถเพิ่ม เหตุการณ์การโทรกลับ กับวิดเจ็ตรายการทุกครั้งที่ได้รับการแก้ไข เราจะสร้างฟังก์ชันเรียกกลับเหตุการณ์โดยระบุตัวแปรที่เก็บอินพุตของผู้ใช้ โดยใช้ trace("mode", ตัวแปร lambda, ตัวแปร:callback()) ด้วยตัวแปร เราสามารถติดตามอินพุตบนวิดเจ็ต Label ในหน้าต่างได้

ตัวอย่าง

#Import the Tkinter library
from tkinter import *
#Create an instance of Tkinter frame
win= Tk()
#Define the geometry
win.geometry("750x250")
def callback(var):
   content= var.get()
   Label(win, text=content).pack()
#Create an variable to store the user-input
var = StringVar()
var.trace("w", lambda name, index,mode, var=var: callback(var))
#Create an Entry widget
e = Entry(win, textvariable=var)
e.pack()
win.mainloop()

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นจะพิมพ์อักขระอินพุตของวิดเจ็ตรายการบนป้ายกำกับข้อความ ตอนนี้ พิมพ์บางอย่างในวิดเจ็ตรายการที่กำหนดเพื่อสะท้อนเหตุการณ์อินพุตบนวิดเจ็ตป้ายกำกับ

ฉันจะรับการเรียกกลับของเหตุการณ์ได้อย่างไรเมื่อมีการแก้ไขวิดเจ็ต Tkinter Entry