对于我的程序,我需要根据用户更新的信息更改可接受值的列表。有什么方法可以做到这一点,或者我可以覆盖一个属性吗?
我简单地尝试了:
col_spinbox.values = spin_vals
其中 spin_vals 是我想要的值的元组,而 col_spinbox 是我试图覆盖接受的值的实例。但这没有用。
从调查来看,属性值似乎存储为一个字符串,每个值之间都有空格。所以我以这种方式格式化了 spin_vals,但它仍然不起作用。是否有打算使用的方法,还是没有办法覆盖可接受的值?
更改 tkinter 小部件的属性或选项的一种常见方法是使用通用config()
小部件方法 - 对 aSpinbox
的values
选项执行此操作确实有效。
简单的例子。
import tkinter as tk
root = tk.Tk()
spinbox = tk.Spinbox(root, values=('red', 'blue', 'green'))
spinbox.pack()
def new_values(spinbox):
spinbox.config(values=('yellow', 'cyan', 'magenta'))
chg_btn = tk.Button(root, text="Chg", command=lambda: new_values(spinbox))
chg_btn.pack()
root.mainloop()