如何在Tkinter中让两个Spin Boxes独立工作
How to make two Spin Boxes inTkinter to work independently
我是 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)
我是 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)