Tkinter Spinbox小部件设置默认值

时间:2013-05-11 17:47:28

标签: tkinter

我有一个tkinter spinbox:

sb = Spinbox(frame, from_=1, to=12)

我想将spinbox的默认值设置为4.我该怎么做?

我已经读过这个帖子,Bryan建议设置

Tkinter.Spinbox(values=(1,2,3,4))
sb.delete(0,"end")
sb.insert(0,2)

但我没有得到它背后的逻辑。

设置默认值时有什么删除和插入?

任何进一步的见解将不胜感激。

感谢

2 个答案:

答案 0 :(得分:14)

sb.delete(0,"end")用于从Spinbox中删除所有文本,并使用sb.insert(0,2)插入数字2作为新值。

您还可以使用textvariable选项设置默认值:

var = StringVar(root)
var.set("4")
sb = Spinbox(root, from_=1, to=12, textvariable=var)

答案 1 :(得分:1)

作为快捷方式,您可以使用:

var = tk.DoubleVar(value=2)  # initial value
spinbox = tk.Spinbox(root, from_=1, to=12, textvariable=var)

可选,您可以将值设置为只读:

spinbox = tk.Spinbox(root, from_=1, to=12, textvariable=var, state='readonly')

相关问题