在JPasswordField中显示密码,而不是将0设置为echo char

如何显示JPasswordField的文本而不是将0设置为echo char?

Java Docs说:

将值设置为0表示您希望在键入文本时看到该文本,类似于标准JTextField的行为。

以下结果导致不兼容的类型错误

outField.setEchoChar(0); 

wheras

 outField.setEchoChar('0'); 

只需将0设置为echo char(每个数字显示0)。

在JTextField上使用JPasswordField的原因是我想更改echo char并使用其他方法隐藏密码。

谢谢!

做这个:

 outField.setEchoChar((char)0); 

如果你这样做:

 outField.setEchoChar(0); 

那么0是整数,而不是char,并且该方法需要char。

如果你这样做:

 outField.setEchoChar('0'); 

然后’0’相当于(char)48。

当你这样做:

 outField.setEchoChar(0); 

你试图将int传递给方法,这是不允许的,因为它需要一个char类型。 相反,试试

 outField.setEchoChar((char)0); 

使用值为0的char,而不是数字0或char’0’:

  outField.setEchoChar((char)0); 

试试吧……

 outField.setEchoChar((char)0); 

尝试outField.setEchoChar('\0');