问题描述
如何用星号掩盖用户输入并保留其原始值?
使用JPasswordField
具有良好功能的jPasswordField.getPassword();
来获取密码char[]
。
- 使用
jPasswordField1.setEchoChar('*')
与掩盖密码字符*
。 - 如果希望看到要插入的值,请使用
jPasswordField1.setEchoChar((char)0);
设置值为0
表示您希望看到键入的文本,这与standard的行为类似JTextField
。
解决方法
因此,我一直在研究密码强度检查器,它的工作方式是用户在文本字段中输入一些随机文本,然后显示即时的视觉反馈(击穿点)。我还添加了一个复选框,选中该复选框时应隐藏密码,即用星号替换所有字符,同时保留用户输入的实际文本。文档侦听器用于跟踪文本字段内的更改。(入场的每个字符都会被分析,然后评分)
因此,我的问题是,如何准确地用星号掩盖用户输入并保留其原始值?
GUI如下所示:
http://speedcap.net/sharing/screen.php?id=files/51/2f/512f9abb3f92a25add7c593e9d80e9e4.png