我的代码:
my_var = tk.StringVar()
m_var2 = tk.StringVar()
my_entry1 = ttk.Entry(root, width=16, textvariable=my_var)
my_radio1 = ttk.Radiobutton(root, text="1", variable=my_var2)
现在
textvariable
和 variable
之间有什么区别?
variable
和 textvariable
在概念上相似,都表示可变数据。
对于
textvariable
,主要与 Entry
和 Label
小部件一起使用,它是一个将显示为文本的变量。当变量更改时,小部件的文本也会更改。
对于
variable
,主要用于 Checkbutton
和 Radiobutton
小部件,它表示小部件保存的值。例如,您可能有带有文本“是”和“否”的单选按钮,但实际值可能是 1 和 0。在这种情况下,variable
代表小部件的值。
在 Tkinter 中,
variable
和 textvariable
都是变量数据类型。 textvariable
是显示为文本的变量。当变量更改时,小部件的文本也会更改。
文本变量是一种表示未知文本值的变量。例如,如果您想询问模板用户的名字,您可以在模板中创建一个文本变量来捕获该特定的数据项。
使用variable
定义的
StringVar()
包含字符串数据,您可以在其中设置文本值并检索它。您可以将此变量传递给
textvariable
等小部件的
Entry
参数。每当
StringVar()
变量的值发生变化时,小部件将自动更新为新值。