如何从 ttk 中的 Spinbox 中获取值?

问题描述

我现在有一个可以工作的 spinBox,但我不知道如何获取 spinBox 的值。在互联网上查看时,我无法使示例正常工作,有人可以帮忙吗?

这就是我现在拥有的。

spinBox = StringVar()
s = ttk.SpinBox(root,from_=1.0,to=100.0,textvariable=spinBox).grid(column=4,row=1,sticky=W)
ttk.Label(root,text="amount:").grid(column=3,sticky=W)

只要在控制台打印数字就足够了。

谢谢,

解决方法

问题是 SpinBox.grid() 不返回任何内容,即返回 None

所以这样做:

s = ttk.Spinbox(root,from_=1.0,to=100.0,textvariable=spinbox)
s.grid(column=4,row=1,sticky=W)
print(s.get())

编辑- 添加一个函数来获取值并将该函数添加到命令参数

def get_spinbox_val():
    global s
    print(s.get())

s = ttk.Spinbox(root,textvariable=spinbox,command=get_spinbox_val)
s.grid(column=4,sticky=W)