3

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

Java 文档 说:

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

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

outField.setEchoChar(0);

哪里

outField.setEchoChar('0');

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

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

谢谢!

4

5 回答 5

6

做这个:

outField.setEchoChar((char)0);

如果你这样做:

outField.setEchoChar(0);

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

如果你这样做:

outField.setEchoChar('0');

那么'0'相当于(char)48。

于 2012-07-24T18:58:58.517 回答
2

当你这样做时:

outField.setEchoChar(0);

您正在尝试将 int 传递给方法,这是不允许的,因为它需要 char 类型。而是尝试

outField.setEchoChar((char)0);
于 2012-07-24T18:58:31.763 回答
2

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

    outField.setEchoChar((char)0);
于 2012-07-24T18:58:38.737 回答
1

像这样试试......

outField.setEchoChar((char)0);
于 2012-07-24T19:01:53.957 回答
1

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

于 2015-07-01T21:21:25.397 回答