[JPasswordField]Protéger un bouton par Mot de passe
Bonjour tout le monde.
J'ai un petit peu du mal à voir comment protéger un bouton par mot de passe.
Je m'explique, j'ai dans une fenêtre plusieurs boutons, dont un qui ne doit fonctionner (et donc exécuter son code) qu'après saisie d'un mot de passe.
Je voudrais donc mettre dans l'écouteur de mon bouton, un appel à une méthode qui renvoie, selon le mot de passe saisi, true ou false. (un petit peu comme le ferait un JOptionPane.showConfirmDialog() avec l'option YES_NO).
En gros, je sais récupérer un mot de passe saisi, le comparer avec ma source, etc... mais je ne vois pas du tout comment effectuer un retour lors d'une action sur mon bouton. (la méthode MouseClicked() par exemple est "void" au niveau du retour...)
Re: [JPasswordField]Protéger un bouton par Mot de passe
Salut,
Citation:
Envoyé par leminipouce
En gros, je sais récupérer un mot de passe saisi, le comparer avec ma source, etc... mais je ne vois pas du tout comment effectuer un retour lors d'une action sur mon bouton. (la méthode MouseClicked() par exemple est "void" au niveau du retour...)
Normal les evenements ne peuvent rien renvoyer... Mais la lecture de ton mot de passe fait partie de ton evenement...
Citation:
Envoyé par leminipouce
De même, si il est possible de changer le type d'input sur JOptionPane.showInputDialog() alors je suis partant... (car c'est exactement ce que je veux faire au final)...
Pas avec showInputDialog() qui t'affichera un JTextField quoi qu'il arrive... Mais tu peux très bien le faire avec n'importe quel autre des méthode statique de JOptionPane, car le paramètre message de ces dernière n'est pas forcément une String...
Tu peux utiliser un composant Swing (JPasswordField par exemple) et il sera directement affiché...
Tu peux même utiliser un tableau en paramètre, et chaque élément sera ajouté indépendamment :
Code:
1 2 3 4 5 6 7 8
| JPasswordField passwordField = new JPasswordField();
JOptionPane.showMessageDialog(null,
new Object[] {
"Veuillez saisir votre mot de passe top-secret : ",
passwordField,
}
); |
a++