在JTextFIeld(Java Swing)中隐藏/显示密码

所以我一直在研究密码强度检查器,它的工作方式是用户在文本字段中输入一些随机文本,然后显示瞬时视觉反馈(点数分解)。 我还添加了一个复选框,在选中时,应隐藏密码,即用星号替换所有字符,同时保留用户输入的实际文本。 正在使用文档侦听器来跟踪文本字段内的更改。 (每个参赛作品都会被分析,然后进行评分)

所以,我的问题是,我究竟如何用星号掩盖用户输入以保留其原始值?

这是GUI的样子:

http://sofzh.miximages.com/java/512f9abb3f92a25add7c593e9d80e9e4.png

我如何使用保留其原始值的星号来屏蔽用户输入?

使用具有良好函数jPasswordField.getPassword();JPasswordField jPasswordField.getPassword(); 获取密码作为char[]使用。

  • 使用jPasswordField1.setEchoChar('*')*屏蔽密码字符。
  • 如果要查看要插入的值,请使用jPasswordField1.setEchoChar((char)0); 将值设置为0表示您希望在键入文本时看到该文本,类似于标准JTextField的行为。

教程和参考:

  1. 如何使用密码字段
  2. setEchoChar(炭)

使用密码字段而不是使用文本字段

好的,谢谢你的教学,

和前,

动作chechbox /双击

 private void lihatActionPerformed(java.awt.event.ActionEvent evt) { if (lihat.isSelected()) { password.setEchoChar((char)0); //password = JPasswordField } else { password.setEchoChar('*'); } }