Tkinter ttk radiobutton变量更新失败

时间:2016-09-30 09:53:36

标签: python tkinter radio-button ttk

这有什么问题?

var = StringVar()
radBut1 = ttk.Radiobutton(root, text='A - Z', variable=var, value='AtoZ')
radBut2= ttk.Radiobutton(root, text='Z - A', variable=var, value='ZtoA')

当我选择2个单选按钮中的任何一个时,var变量不会更新。我在不同的文档资源和教程中找到了很多相互矛盾的材料(我尝试了所有我发现的东西)都无济于事。

我使用以下内容检查var:

的值
print(var)

1 个答案:

答案 0 :(得分:0)

这有效:

def updateRadioButtonVariable(radioButtonVar,updateString):
    radioButtonVar.set(updateString)

#Sort Type Radio Button
radioButtonVar = StringVar()
radBut1= ttk.Radiobutton(root, text='A - Z', variable=radioButtonVar, value='AtoZ',command= lambda: updateRadioButtonVariable(radioButtonVar ,'AtoZ'))
radBut2= ttk.Radiobutton(root, text='Z - A', variable=radioButtonVar, value='ZtoA',command= lambda: updateRadioButtonVariable(radioButtonVar ,'ZtoA'))

不确定为什么原始代码(几乎是文档中的模板代码)不起作用。如果有人有任何想法,请分享。