var1=tk.BooleanVar()
c=tk.Checkbutton(root,text='隐藏密码',variable=var1,onvalue=True,offvalue=False)
c.place(x=460,y=75,width=100)
if var1.get()==True:
enter2 = tk.Entry(root,show='*',textvariable=password)
else:
enter2 = tk.Entry(root,textvariable=password)
要给checkbutton绑定command,再在这个函数里进行值的判断,和button很像。
import tkinter as tk
window = tk.Tk() # 实例化Tk
window.title("muy window") # 设置标题
window.geometry("200x150") # 设置窗口的大小
l = tk.Label(window, bg="yellow", width=15, text="empty")
l.pack()
def print_selection(): # Scale调用函数,其有自动的传入值
if (var1.get() == 1) & (var2.get() == 0):
l.config(text="i love python")
elif (var1.get() == 1) & (var2.get() == 1):
l.config(text="i love both")
elif (var1.get() == 0) & (var2.get() == 1):
l.config(text="i love C++")
else:
l.config(text="i don't love either")
var1 = tk.IntVar()
var2 = tk.IntVar()
cl = tk.Checkbutton(window, text="Python", variable=var1, onvalue=1, offvalue=0
, command=print_selection) # 选择var1的值为1,否则为0
c2 = tk.Checkbutton(window, text="C++", variable=var2, onvalue=1, offvalue=0
, command=print_selection)
cl.pack()
c2.pack()
window.mainloop() # 显示窗口
从参考资料中可以看出,可以使用tkinter的Checkbutton控件实现勾选“隐藏密码”并显示为*号的功能。首先,我们需要创建一个Checkbutton并设置相应的变量和命令。然后,在命令函数中根据Checkbutton的状态来判断是否隐藏密码并显示*号。下面是具体的解决方案:
import tkinter as tk
def hide_password():
if hide_var.get() == 1: # 如果勾选了隐藏密码
password_entry.config(show="*") # 设置输入框的显示内容为*
else:
password_entry.config(show="") # 不隐藏密码,显示实际输入内容
window = tk.Tk()
window.title("Password Input")
window.geometry("200x150")
hide_var = tk.IntVar()
hide_checkbox = tk.Checkbutton(window, text="隐藏密码", variable=hide_var, command=hide_password)
hide_checkbox.pack()
password_label = tk.Label(window, text="密码:")
password_label.pack()
password_entry = tk.Entry(window, show="") # 创建一个输入框,初始时不隐藏密码
password_entry.pack()
window.mainloop()
运行以上代码,即可实现一个具有“隐藏密码”功能的密码输入界面。当勾选“隐藏密码”时,输入框中的密码会显示为*号,取消勾选则显示实际输入内容。
希望以上信息对你有所帮助!如果还有其他问题,请继续提问。