Я пытаюсь закодировать окно входа в систему с помощью Tkinter, но я не могу скрыть текст пароля в формате звездочки. Это означает, что ввод пароля - это простой текст, которого следует избегать. Любая идея, как это сделать?
Как создать поле ввода пароля с помощью Tkinter
Ответ 1
Быстрый поиск в Google дал это
widget = Entry(parent, show="*", width=15)
где widget
- текстовое поле, parent
- родительский виджет (окно, кадр, что угодно), show
- символ для эха (это символ, показанный в Entry
) и width
- ширина виджета.
Ответ 2
Если вы не хотите создавать новый виджет Entry, вы можете сделать это:
myEntry.config(show="*");
Чтобы снова вернуться к нормальной работе, сделайте следующее:
myEntry.config(show="");
Я обнаружил это, изучив предыдущий ответ и используя вспомогательную функцию в интерпретаторе Python (например, help (tkinter.Entry) после импорта (от сканирования документации там). Я признаю, что я просто догадался, как сделать это нормально снова.
Ответ 3
widget-name = Entry(parent,show="*")
Вы также можете использовать символ пули:
bullet = "\u2022" #specifies bullet character
widget-name = Entry(parent,show=bullet)#shows the character bullet
Ответ 4
Здесь небольшое, чрезвычайно простое демонстрационное приложение скрывает и извлекает пароль с помощью 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()
Надеюсь, что это поможет!