Глава 16 · Создаём классные приложения с Tkinter
Переменные Tkinter
Специальные переменные, которые сами обновляют связанные с ними виджеты на экране.
Обычные переменные Python не «знают», когда их значение меняется в интерфейсе. Для
виджетов, которые должны реагировать на изменения (переключатели, флажки — раздел 16.5),
Tkinter предлагает свои специальные переменные: StringVar,
IntVar, BooleanVar,
DoubleVar.
peremennye_tkinter.py
import tkinter as tk
root = tk.Tk()
imya = tk.StringVar(value="Гость")
label = tk.Label(root, textvariable=imya) # метка сама обновится при смене imya
label.pack()
def smenit_imya():
imya.set("Cartesian")
button = tk.Button(root, text="Сменить имя", command=smenit_imya)
button.pack()
root.mainloop()
Значение достают методом .get() и меняют методом
.set() — а виджеты, связанные через
textvariable, обновляются на экране автоматически.
Практика в Jupyter Notebook
16-04-peremennye.ipynb · StringVar и связанные виджеты