如何显示JPasswordField的文本而不是将0设置为echo char?
Java Docs说:
将值设置为0表示您希望在键入文本时看到该文本,类似于标准JTextField的行为。
以下导致不兼容类型错误
outField.setEchoChar(0);
wheras
outField.setEchoChar('0');
只需将0设置为echo char(每个数字显示0)。
在JTextField上使用JPasswordField的原因是我想更改echo char并使用其他方法隐藏密码。
谢谢!
答案 0 :(得分:6)
这样做:
outField.setEchoChar((char)0);
如果你这样做:
outField.setEchoChar(0);
然后0是整数,而不是char,并且该方法需要char。
如果你这样做:
outField.setEchoChar('0');
然后' 0'相当于(char)48。
答案 1 :(得分:2)
执行此操作时:
outField.setEchoChar(0);
你试图将int传递给方法,但这是不允许的,因为它需要一个char类型。而是尝试
outField.setEchoChar((char)0);
答案 2 :(得分:2)
使用值为0的char,而不是数字0,或使用char'0':
outField.setEchoChar((char)0);
答案 3 :(得分:1)
像这样试试......
outField.setEchoChar((char)0);
答案 4 :(得分:1)
尝试outField.setEchoChar('\0');