如何让Tkinter中的两个Spin Box独立工作

问题描述

我是 Tkinter 的新手,我正在开发一个包含 2 个 SpinBox 的应用程序。 代码如下:

from tkinter import *

   
vals1 = [1,3,5,7]
vals2 = [2,4,6,8,10]

root = Tk()

SpB1Var = DoubleVar()
SpB2Var = DoubleVar()

FrInitial = Frame(root,width=800,height=400,bg="blue")
FrInitial.pack()

SpB1=SpinBox(FrInitial,values=vals1,textvariable=SpB1Var.get())
SpB1.place(x=281,y=130)

SpB2=SpinBox(FrInitial,values=vals2,textvariable=SpB2Var.get())
SpB2.place(x=581,y=130)

root.mainloop()

当我运行它并更改一个 SpinBox 的值时,另一个立即更改值。

我怎样才能让它们独立工作? 如何将第一个 SpinBox认值设置为 5 而不是 1?

如果我用 Scales 更改 SpinBoxes,它工作正常。为什么?

非常感谢

解决方法

请勿在此处使用 get()。只需使用变量。像这样:

SpB1 = Spinbox(FrInitial,values = vals1,textvariable=SpB1Var)