Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Các đối số của phương thức trace callback biến Tkinter

Biến Tkinter (var) định nghĩa cho widget (textvariable=var) lưu giá trị cập nhật. Khi cập nhật biến, đôi khi cần xử lý thêm: đọc, ghi, hoặc chưa định nghĩa.

Tkinter cung cấp cách cập nhật biến với callback trace (self, mode, callback) nhận thao tác: read(r), write(w), hoặc undefined(u). Theo giá trị này, callback quyết định xử lý. Hai giá trị khác xác định biến cần trace (chứa info widget) và chỉ số biến.

Ví dụ

Trace giá trị Entry widget cập nhật khi người dùng nhập.

#Import thư viện
from tkinter import*
#Tạo instance Tkinter frame
win = Tk()
win.geometry("750x250")
#Tạo biến lưu input người dùng
my_variable = StringVar()
def trace_when_Entry_widget_is_updated(var, index, mode):
    print ("{}".format(my_variable.get()))
my_variable.trace_variable("w", trace_when_Entry_widget_is_updated)
Label(win, textvariable = my_variable).pack(padx=5, pady=5)
Entry(win, textvariable = my_variable, width=20).pack(ipadx=20,padx=5, pady=5)
win.mainloop()

Kết quả

Chạy mã hiển thị Entry widget lưu input vào biến. Callback trace giá trị cập nhật và hiển thị trong Label.

Gõ vào Entry. Label sẽ mô phỏng giá trị input.

Các đối số của phương thức trace callback biến Tkinter

Trên console:

H He Hel Hell Hello Hello Hello W Hello Wo Hello Wor Hello Worl Hello World