Может ли кто-нибудь понять меня самым простым способом? Что такое метод трассировки в ткинтер python 3 - PullRequest
0 голосов
/ 03 мая 2020

Что метод трассировки понимает меня проще всего когда-либо?

1 Ответ

0 голосов
/ 03 мая 2020

Метод trace для переменных tkinter позволяет запрашивать, чтобы tkinter вызывал функцию всякий раз, когда переменная установлена, удалена или прочитана.

Вот пример, который показывает, что метка обновляется при выборе радиокнопка:

import tkinter as tk

def callback(*args):
    label.configure(text=f"Your choice: '{chosen_color.get()}'")

root = tk.Tk()
label = tk.Label(root, text="", width=20, justify="left")
label.pack(side="bottom", fill="x")

chosen_color = tk.StringVar()
for color in ("None", "Red", "Yellow", "Green", "Blue"):
    cb = tk.Radiobutton(root, var=chosen_color, text=color, value=color, anchor="w")
    cb.pack(side="top", anchor="w")

# arrange for `callback` to be called when `chose_color` is modified
# note: "w" represents the mode "written". 
chosen_color.trace("w", callback)

# give the variable an intial value, which will trigger
# the trace
chosen_color.set("None")
root.mainloop()
...