web-dev-qa-db-ja.com

Tkinterを使用してパスワード入力フィールドを作成する方法

Tkinterを使用してログインウィンドウをコーディングしようとしていますが、パスワードテキストをアスタリスク形式で非表示にできません。つまり、パスワードエントリはプレーンテキストであり、回避する必要があります。それを行う方法はありますか?

33
Hick

クイックグーグル検索はこれをもたらしました

widget = Entry(parent, show="*", width=15)

ここで、widgetはテキストフィールド、parentは親ウィジェット(ウィンドウ、フレームなど)、showはエコーする文字(つまり、 Entry)およびwidthはウィジェットの幅です。

63

まったく新しいエントリウィジェットを作成したくない場合は、次の操作を実行できます。

myEntry.config(show="*");

再び正常に戻すには、次の操作を行います。

myEntry.config(show="");

以前の回答を調べて、Pythonインタープリターでヘルプ機能を使用することでこれを発見しました(例:help(tkinter.Entry)インポート後(ドキュメントをスキャンして))。正常に戻す方法を見つけます。

21
Shule

以下は、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() 

お役に立てば幸いです!

7
喬治扎菲
widget-name = Entry(parent,show="*")

箇条書き記号も使用できます。

bullet = "\u2022" #specifies bullet character
widget-name = Entry(parent,show=bullet)#shows the character bullet
7
Nathan Green