我正在尝试使用Tkinter编写登录窗口,但我无法以星号格式隐藏密码文本。这意味着密码输入是纯文本,必须避免。知道怎么做吗?
答案 0 :(得分:57)
快速谷歌搜索产生了这个
widget = Entry(parent, show="*", width=15)
其中widget
是文本字段,parent
是父窗口小部件(窗口,框架等等),show
是要回显的字符(即显示的字符) Entry
)和width
是小部件的宽度。
答案 1 :(得分:21)
如果您不想创建全新的Entry小部件,可以执行以下操作:
myEntry.config(show="*");
要使其恢复正常,请执行以下操作:
myEntry.config(show="");
我通过检查前面的答案,并使用Python解释器中的帮助功能(例如帮助(tkinter.Entry)导入后(从那里扫描文档)发现了这一点。我承认我猜想要弄清楚如何制作再次正常。
答案 2 :(得分:7)
widget-name = Entry(parent,show="*")
您还可以使用项目符号:
bullet = "\u2022" #specifies bullet character
widget-name = Entry(parent,show=bullet)#shows the character bullet
答案 3 :(得分:6)
这是一个非常简单的小型演示应用程序,它使用Tkinter隐藏和获取密码。
#Python 3.4 (For 2.7 change tkinter to Tkinter)
from tkinter import *
def show():
p = password.get() #get password from entry
print(p)
app = Tk()
password = StringVar() #Password variable
passEntry = Entry(app, textvariable=password, show='*').pack()
submit = Button(app, text='Show Console',command=show).pack()
app.mainloop()
希望有所帮助!