Python 如何获取所选单选按钮的值?
我想创建两组不同的单选按钮。用户将从任一组中选择一个选项。有一个函数可以从所选单选按钮获取值(字符串),然后打印它们。这是我的代码,但它不起作用(我是python新手)Python 如何获取所选单选按钮的值?,python,tkinter,radio-button,Python,Tkinter,Radio Button,我想创建两组不同的单选按钮。用户将从任一组中选择一个选项。有一个函数可以从所选单选按钮获取值(字符串),然后打印它们。这是我的代码,但它不起作用(我是python新手) 在单选按钮中,分析要传递的参数: gumb1 = Radiobutton(root, text = "Euro", value = "Euro", variable = "btn2" 参数值和变量存储单选按钮
在单选按钮中,分析要传递的参数:
gumb1 = Radiobutton(root,
text = "Euro",
value = "Euro",
variable = "btn2"
参数值
和变量
存储单选按钮的数据。您已正确设置了值
选项。当选择单选按钮时,解释器将自动使用值设置变量
但你的问题就在这里:
variable = "btn2"
“btn2”
是一个字符串。但不是很有用,是吗?事实上,您正在尝试对其执行甚至不存在的方法。例如:
def funkcija():
X = btn2.get()
事实上,根据这些信息,你几乎成功了
在脚本顶部,需要将btn2
设置为Tkinter的StringVar
,如下所示:
from tkinter import *
btn1 = StringVar()
btn2 = StringVar()
现在完成了,让我们更改单选按钮中的参数
gumb1 = Radiobutton(root,
text = "Euro",
value = "Euro",
variable = btn2
现在,Tkinter将在选择变量时自动更新该变量。要获取该值,请执行与在funkcija
中相同的操作
X = btn2.get()
然后btn2的值(由单选按钮更新)将不会被读取,并存储到变量X
您能写下什么有效吗?你能把代码裁剪成更小的吗?它已经被解决了:)非常感谢!还有一个问题。为什么我必须将变量设置为root=Tk()下面的StringVar?如果我把它们放在root=Tk()上面,它就不起作用了。
X = btn2.get()