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

如何取消选中ttk.Radiobutton?求有效实现方案

解决ttk.Radiobutton取消选中的问题

ttk的单选按钮没有deselect()方法,它的选中状态完全由绑定的变量(也就是你代码里的self.var)控制,不像tk原生单选按钮有独立的状态控制接口。要取消所有ttk单选按钮的高亮选中状态,只需要把绑定的变量设置为一个不在现有按钮value值范围内的数值即可。

你的两个按钮value分别是1和2,所以直接把self.var设为0,就能让两个按钮都回到未选中状态:

# 写一个取消选中的方法
def deselectRadios(self):
    self.var.set(0)

之后在需要取消选中的场景调用这个方法就行,比如加个触发按钮:

self.cancelBtn = ttk.Button(self, text="取消选中", command=self.deselectRadios)

核心逻辑就是:ttk单选按钮只有在绑定变量的值和自身value匹配时才会被选中,把变量设为其他值,所有按钮都会自动取消高亮状态,完全不需要依赖deselect()方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 05:27:13