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

基于Tkinter使用bind方法更新字典值及复选框联动输入框问题求解

解决方案

你需要修改DictionaryEntry类的naccheck方法,即可实现「复选框取消激活时自动将entry_c2的值设置为与entry_c1一致」的需求,修改逻辑如下:

  • 当检测到复选框未勾选(self.nac.get() == 0)时,先读取entry_c1的当前值
  • 将读取到的值赋值给entry_c2绑定的StringVar变量,同步更新输入框显示
  • 同步修改存储的values数组对应位置的值,保证后续字典取值正确

修改后的完整方法代码:

def naccheck(self):
    if self.nac.get() == 0:
        # 同步entry_c2值为entry_c1当前值
        current_c1_val = self.entry_c1.get()
        self.variable[1].set(current_c1_val)
        self.values[-1] = current_c1_val
        self.entry_c2.configure(state='disabled')
    else:
        self.entry_c2.configure(state='normal')

修改完成后运行程序即可验证效果:勾选复选框可独立修改两个输入框的值,取消勾选后第二个输入框会自动变为和第一个输入框相同的值,同时变为不可编辑状态,点击「click me」按钮打印字典可以看到对应值已经同步更新。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 18:06:03