L'ajout d'un champ de mot de passe - GUI

J'ai un JTextField. La même JTextField sera utilisé pour obtenir à la fois le nom et le mot de passe de l'utilisateur. Donc, si c'est d'obtenir le nom d'utilisateur, je voudrais afficher ce que l'utilisateur tape sur le champ de Texte. Mais s'il est l'insertion d'un mot de passe, le terrain ne doit pas afficher le mot de passe (mais l'affichage de * caractères à la place).

Comment puis-je faire un component swing jtextfield masquer les caractères qu'il/elle types ?

Pseudocode :

If (usernameBool!=true) {
 //Display normal text - user is able to see the password
} else {
//This is going to be a password field, so i need to not show the password to the user instead show it as ******* instead.

}

Remarque: je ne veux pas utiliser JPasswordField pour cette

  • "Je ne veux pas utiliser JPasswordField pour ce" Et pourquoi exactement?
  • Pouvez-vous expliquer pourquoi vous voulez être exactement la même obect? Le fait que dans l'interface graphique, vous aurez juste un domaine ne signifie pas que vous ne pouvez pas utiliser un JPasswordField qui existe juste pour cela. Vous pouvez changer le champ sous-jacent et de basculer entre les deux.
  • Parce que je suis en utilisant le même component swing jtextfield pour obtenir le nom d'utilisateur et mot de passe. et je ne veux pas ajouter n'importe quel autre domaine
  • "Je ne veux pas". Si vous préférez écrire quelque chose de maladroit et de perdre du temps pour ça, sans raison? Ce n'est pas un bon point.
  • mais s'il vous plaît expliquer les raisons derrière cette décision. Peut-être nous pouvons vous aider à résoudre ce mieux si vous nous en dire plus en détail. Par exemple, si la clé est que vous voulez l'emplacement du nom et de l'entrée de mot de passe pour être le même endroit exact de l'interface graphique, alors peut-être un CardLayout vous permettra de changer un component swing jtextfield pour un JPasswordField.
  • Je suis à l'aide d'un seul cadre pour l'authentification. Donc je vais devoir prendre le nom d'utilisateur et mot de passe champs à partir de ce cadre. Et, je ne peux pas changer la structure de ce cadre. (je ne peux pas enlever l'existant component swing jtextfield et ajouter un JPasswordField)
  • Pop un JOptionPane avec les deux composantes vu ici.
  • Je ne comprends juste pas pourquoi ce post est downvoted. C'est une question valable, et aucune ne semble connaître la réponse. Ainsi, c'est pourquoi il est downvoted ?
  • Je lui ai donné un -1 parce que 1) C'est un idiot exigence (utiliser une insécurité composant un mot de passe), combiné avec l'2) Une facile raison pour ne pas utiliser le composant approprié. P. S. j'ai aussi jeté dans un vote à près "pas une vraie question".
  • C'était probablement vers le bas voté parce que c'était très incomplet au début et a été difficile d'obtenir des renseignements de vous nécessaire pour nous permettre de répondre à la question. Pas mon bas de vote par la voie.

InformationsquelleAutor sharon Hwk | 2012-12-15