だから私はパスワード強度チェッカーに取り組んできましたが、その動作方法は、ユーザーがテキストフィールドにランダムなテキストを入力すると、瞬時の視覚フィードバック(ポイントの内訳)が表示されるということです。また、チェックボックスを追加しました。これを選択すると、パスワードが非表示になります。つまり、ユーザーによる実際のテキスト入力を保持しながら、すべての文字をアスタリスクに置き換えます。テキストリスナー内の変更を追跡するためにドキュメントリスナーが使用されています。 (エントリの各文字が分析されてからスコア付けされます)
だから、私の質問は、元の値を保持するアスタリスクでユーザー入力をどのように正確にマスクするのですか?
GUIは次のようになります。
http://speedcap.net/sharing/screen.php?id=files/51/2f/512f9abb3f92a25add7c593e9d80e9e4.png
元の値を保持するアスタリスクでユーザー入力を正確にマスクするにはどうすればよいですか?
Nice関数jPasswordField.getPassword();
を持つJPasswordField
を使用して、パスワードを_char[]
_として取得し、処理します。
jPasswordField1.setEchoChar('*')
を使用して、パスワード文字を_*
_でマスクします。jPasswordField1.setEchoChar((char)0);
を使用します。_0
_の値を設定すると、標準のJTextField
。チュートリアルとリファレンス:
テキストフィールドを使用する代わりにパスワードフィールドを使用する
チュートリアルのおかげで、
および元、
アクションチェックボックス/ダブルクリック
private void lihatActionPerformed(Java.awt.event.ActionEvent evt) {
if (lihat.isSelected()) {
password.setEchoChar((char)0); //password = JPasswordField
} else {
password.setEchoChar('*');
}
}