Python 如何追溯更改tkinter Spinbox实例的边界?

Python 如何追溯更改tkinter Spinbox实例的边界?,python,tkinter,overwrite,bounds,spinbox,Python,Tkinter,Overwrite,Bounds,Spinbox,对于我的程序,我需要根据用户的更新信息更改可接受值的列表。有什么方法可以做到这一点,或者我可以覆盖一个属性吗 我试着简单地说: col_spinbox.values = spin_vals 其中,spin_vals是我想要的值的元组,col_spinbox是我试图覆盖接受值的实例。但这不起作用 根据调查,属性值似乎存储为字符串,每个值之间有空格。所以我用这种方式格式化了spin_vals,但仍然不起作用。是否有一种方法可供使用,或者根本无法覆盖可接受的值?更改tkinter小部件的属性或选项的

对于我的程序,我需要根据用户的更新信息更改可接受值的列表。有什么方法可以做到这一点,或者我可以覆盖一个属性吗

我试着简单地说:

col_spinbox.values = spin_vals
其中,spin_vals是我想要的值的元组,col_spinbox是我试图覆盖接受值的实例。但这不起作用


根据调查,属性值似乎存储为字符串,每个值之间有空格。所以我用这种方式格式化了spin_vals,但仍然不起作用。是否有一种方法可供使用,或者根本无法覆盖可接受的值?

更改tkinter小部件的属性或选项的一种常见方法是使用通用小部件方法-对
Spinbox
选项执行此操作确实有效

简单的例子

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()