如何追溯更改 tkinter Spinbox 实例的边界?
How does one retroactively change the bounds of a tkinter Spinbox instance?
对于我的程序,我需要根据用户更新的信息更改可接受值列表。有什么方法可以做到这一点,或者 属性 我可以覆盖吗?
我简单试了一下:
col_spinbox.values = spin_vals
其中 spin_vals 是我想要的值的元组,col_spinbox 是我试图覆盖接受值的实例。但这没有用。
根据调查,属性 值似乎存储为每个值之间有空格的字符串。所以我就这样格式化了spin_vals,还是不行。是否有旨在使用的方法,或者只是没有办法覆盖可接受的值?
更改 tkinter 小部件的属性或选项的一种常见方法是使用通用 config()
小部件方法 — 对 Spinbox
的 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()
对于我的程序,我需要根据用户更新的信息更改可接受值列表。有什么方法可以做到这一点,或者 属性 我可以覆盖吗?
我简单试了一下:
col_spinbox.values = spin_vals
其中 spin_vals 是我想要的值的元组,col_spinbox 是我试图覆盖接受值的实例。但这没有用。
根据调查,属性 值似乎存储为每个值之间有空格的字符串。所以我就这样格式化了spin_vals,还是不行。是否有旨在使用的方法,或者只是没有办法覆盖可接受的值?
更改 tkinter 小部件的属性或选项的一种常见方法是使用通用 config()
小部件方法 — 对 Spinbox
的 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()