Avatar billede netspinner Nybegynder
16. maj 2006 - 10:43 Der er 5 kommentarer og
1 løsning

Password-karakterer muligt i JOptionPane?

Jeg har lavet et login til en applikation med brug af JOptionPane. Problemet er bare at det password brugeren indtaster er i alm. karakterer. Dette vil jeg gerne have lavet om til f.eks. *-karakteren. Dvs. når man indtaster kodeordet "password", bliver det til "********". Er det muligt med JOptionPane?
Avatar billede netspinner Nybegynder
16. maj 2006 - 14:08 #1
Kom nu, der må da være nogen der ved om man kan?
Avatar billede jensgram Nybegynder
16. maj 2006 - 14:43 #2
Det tvivler jeg på, at du kan direkte med JOptionPane, men JDialog kan da bruges som udgangspunkt: http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JDialog.html
Avatar billede netspinner Nybegynder
16. maj 2006 - 14:45 #3
Ja, det har jeg fundet ud + at man kan bruge JPasswordField. Men jeg har ikke lyst til at omskrive det jeg allerede har lavet, da det ellers fungerer upåklageligt.
Avatar billede snoop_one Nybegynder
18. maj 2006 - 13:24 #4
Ja det kan man faktisk godt :)

import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;

public class test {

    private static JFrame frame;

    public static void main(String[] args) {
        frame = new JFrame("Dialog Test");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        System.out.println(getPassword());
    }
   
    private static String getPassword(){
        JPasswordField password = new JPasswordField(20);
        final Object[] fields = {"Enter your password:", password};
        JOptionPane pane = new JOptionPane(fields,
                                          JOptionPane.QUESTION_MESSAGE,
                                          JOptionPane.OK_CANCEL_OPTION,
                                          null);
        JDialog d = pane.createDialog(frame, "Password");
        d.setVisible(true);
        Integer returnValue = (Integer) pane.getValue();
        d.dispose();
        if (returnValue == null || returnValue.intValue() != JOptionPane.OK_OPTION)
            return null;
        return new String(password.getPassword());
    }
}
Avatar billede snoop_one Nybegynder
18. maj 2006 - 13:25 #5
svar
Avatar billede netspinner Nybegynder
18. maj 2006 - 13:32 #6
Super, det har jeg ikke kunnet finde nogen steder - tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester