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

Tkinter中Entry密码框Checkbutton未选中时显示文本及切换功能修复

Tkinter密码框显示/隐藏功能修复方案

原代码仅实现了密码显示逻辑,未处理取消勾选时的隐藏操作,且缺少对Checkbutton状态的判断。以下是修复后的完整实现:

修复后的代码

import tkinter as tk

def show():
    # 判断复选框是否被选中
    if showpassword.instate(['selected']):
        # 选中时显示明文
        password_entry.config(show="")
    else:
        # 未选中时显示*隐藏密码
        password_entry.config(show="*")

root = tk.Tk()
root.title("密码显示示例")

# 创建密码输入框,初始状态隐藏密码
password_entry = tk.Entry(root, show="*")
password_entry.pack(padx=10, pady=10)

# 创建显示密码复选框,绑定切换函数
showpassword = tk.Checkbutton(root, text="显示密码", command=show)
showpassword.pack(padx=10, pady=5)

root.mainloop()

关键修复点

  • 状态判断:在show函数中通过showpassword.instate(['selected'])获取复选框的选中状态,以此决定密码框的显示模式
  • 双向切换:根据复选框状态动态设置Entry的show参数,实现勾选显示、取消勾选隐藏的完整功能
  • 补全主窗口:添加tk.Tk()实例,确保Tkinter组件能正常渲染

内容的提问来源于stack exchange,提问作者Jai Krishna Das Saini

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 00:37:15