可变变量
tkinter 中可变的变量
由于 python 中的字符串、整数、浮点数以及布尔值都是不可变的,所以 tkinter 自带了一些类型,可以就地更新,并可以在其值发生改变时通知相关的插件。下面所述即为 Python 中的不可变类型与 tkinter 中可变类型。
不可变类型与可变类型
- int:
IntVar
- string:
StringVar
- bool:
BooleanVar
- double:
DoubleVar
且可变类型的值是通过 set 和 get 方法来设置和获得的。
py
import tkinter as tk
count = 0
def click():
global count
count += 1
# 改变 v 的值,即改变 Checkbutton 的显示值
v.set(f'被点击了 {count} 次')
root = tk.Tk()
root.geometry('500x300')
v = tk.StringVar()
v.set('点击一下')
# 绑定 v 到 Checkbutton 的属性 textvariable
cb = tk.Checkbutton(root, textvariable=v, command=click)
cb.pack()
root.mainloop()