You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tkinter Radiobutton的.get()方法无法获取选中值问题

Tkinter Radiobutton点击按钮始终输出初始值的修复方案

问题原因

你代码中test = sensorLoc.get()是在窗口初始化阶段执行的,只会获取一次单选按钮的初始值"lamp"。后续切换单选按钮时,test变量不会自动更新,而SAVE按钮的lambda命令引用的是这个固定的初始值,所以点击后永远输出"lamp"。

修复方案

方案一:直接在按钮命令中实时获取值

不需要额外的test变量,在点击按钮时直接调用sensorLoc.get()获取当前选中值:

btn_save = tk.Button(dataBox, text="SAVE", command=lambda: print(sensorLoc.get()))

方案二:使用单独的处理函数

如果需要在保存时执行更多逻辑,可以把获取值的操作封装到函数中:

def handle_save():
    current_value = sensorLoc.get()
    print(current_value)
    # 这里可以添加其他数据处理或保存逻辑

btn_save = tk.Button(dataBox, text="SAVE", command=handle_save)

额外注意

代码中Button需要改为tk.Button(因为你导入tkinter为tk),否则会出现未定义错误。

内容的提问来源于stack exchange,提问作者Galorch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 06:35:15