package de.memtext.dlg; import javax.swing.JFrame; import de.memtext.widgets.LabeledPasswordField; import de.memtext.widgets.LabeledTextField; import de.memtext.widgets.MultilineEditPanel; /** A Login Dialog */ public class LoginDlg extends OkCancelDlg { private LabeledTextField lUser = new LabeledTextField("Kennung", 15); private LabeledPasswordField lPass = new LabeledPasswordField("Passwort", 15); public LoginDlg(JFrame frame, String title) { super(frame, title, true); initdlg(); } private void initdlg() { MultilineEditPanel vbox = new MultilineEditPanel(); vbox.add(lUser); vbox.add(lPass); this.setCenter(vbox); this.pack(); } @Override protected void performOk() { this.hide(); } public void setUsername(String username) { lUser.setValue(username); } public void setPassword(String password) { lPass.setValue(password); } @Override protected void performCancel() { this.hide(); } public String getUsername() { return lUser.getValue().toString(); } /** * can be returned only once, cleared for security reasons * afterwards * @return */ public String getPassword() { /* char[] pw = passw.getPassword(); String result = new String(pw); for (int i = 0; i < pw.length; i++) { pw[i] = 0; } return result; */ return lPass.getValue().toString(); } public static void main(String args[]) { LoginDlg d = new LoginDlg(null, "asdf"); d.show(); System.out.println(d.getPassword()); } }