17

だから私はパスワード強度チェッカーに取り組んできました。その仕組みは、ユーザーがランダムなテキストをテキストフィールドに入力すると、即座に視覚的なフィードバック (ポイントの内訳) が表示されるというものです。また、チェックボックスを追加しました。これを選択すると、ユーザーが実際に入力したテキストを保持しながら、すべての文字をアスタリスクに置き換えて、パスワードを非表示にする必要があります。ドキュメント リスナーは、テキスト フィールド内の変更を追跡するために使用されています。(エントリの各文字が分析され、スコアが付けられます)

それで、私の質問は、元の値を保持するアスタリスクでユーザー入力を正確にマスクするにはどうすればよいですか?

GUI は次のようになります。

http://speedcap.net/sharing/screen.php?id=files/51/2f/512f9abb3f92a25add7c593e9d80e9e4.png

4

4 に答える 4

37

元の値を保持するアスタリスクでユーザー入力をマスクするにはどうすればよいですか?

操作するパスワードを取得するには、JPasswordField便利な機能を備えた を使用します。jPasswordField.getPassword();char[]

  • を使用jPasswordField1.setEchoChar('*')してパスワード文字をマスクします*
  • 挿入するjPasswordField1.setEchoChar((char)0);値を表示したい場合は、値を に設定する0と、標準の動作と同様に、入力したとおりにテキストを表示することを示しますJTextField

チュートリアルとリファレンス:

  1. パスワード フィールドの使用方法
  2. setEchoChar(文字)
于 2013-11-03T16:43:50.110 に答える
2

テキストフィールドの代わりにパスワードフィールドを使用する

于 2018-04-11T08:13:17.973 に答える
1

わかりました、tutorialnya に感謝します。

そして例、

アクションチェックボックス / ダブルクリック

private void lihatActionPerformed(java.awt.event.ActionEvent evt) {  

   if (lihat.isSelected()) {
      password.setEchoChar((char)0); //password = JPasswordField
   } else {
      password.setEchoChar('*');
   }
}
于 2014-12-26T06:46:25.950 に答える