这可能看起来微不足道,但我无法弄清楚如何在此对话框中输入密码框。我怎样才能给这个密码字段焦点?
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
public class PasswordBox {
@SuppressWarnings("unused")
public String prompt() {
JPasswordField pass = new JPasswordField(10);
int action = JOptionPane.showConfirmDialog(null, pass,"Enter Password",JOptionPane.OK_CANCEL_OPTION);
return new String(pass.getPassword());
}
}
我调用它从其他类这样的:String tmpPASS = new PasswordBox().prompt();
出于某种原因,当对话框出现时,“确定”按钮获得焦点。
堆栈跟踪(见Eng.Fouad的答案):
at javax.swing.JComponent.addNotify(Unknown Source)
at PasswordBox$1.addNotify(PasswordBox.java:14)
at java.awt.Container.addNotify(Unknown Source)
http://stackoverflow.com/questions/6251665/setting-component -focus-in-joptionpane-showoptiondialog/21426340# –