Invalider la saisie de quote dans un JTextField

srx Messages postés 7 Date d'inscription mercredi 10 octobre 2001 Statut Membre Dernière intervention 26 juillet 2004 - 5 juil. 2004 à 12:25
srx Messages postés 7 Date d'inscription mercredi 10 octobre 2001 Statut Membre Dernière intervention 26 juillet 2004 - 5 juil. 2004 à 14:51
Bonjour,
j'aurais besoin de savoir comment on peut faire pour que lorsque l'on saisie une quote (') dans un JTextField, celle-ci ne soit pas affichée dans le JTextField et n'appartienne pas à la chaine contenue dans ce JTextField.

Merci d'avance.
:)

4 réponses

wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
5 juil. 2004 à 13:40
addInputMethodListener pour etre averti lors de changement de texte, puis c'est toi qui filtre aces get/set Text()
0
srx Messages postés 7 Date d'inscription mercredi 10 octobre 2001 Statut Membre Dernière intervention 26 juillet 2004
5 juil. 2004 à 13:59
J'ai essayé mais lors de la saisie de texte, l'évènement n'est pas intercepté par mon listener, et pourtant je l'ai bien abonné.

Si tu avais un exemple ça serait plutôt cool ;-)

Merci d'avance
0
wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
5 juil. 2004 à 14:29
oauis exacte ca marche pas top top. Bon essais ca

public class Main extends JFrame {
private JTextField text;

public Main(){
text=new JTextField();

text.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
detecte();
}
});
this.getContentPane().setLayout(new BorderLayout());
this.getContentPane().add(text,BorderLayout.CENTER);
this.pack();
this.setVisible(true);
}

private void detecte(){
System.out.println("field="+text.getText());
}

public static void main(String[] args) {
Main m=new Main();
}
}
0
srx Messages postés 7 Date d'inscription mercredi 10 octobre 2001 Statut Membre Dernière intervention 26 juillet 2004
5 juil. 2004 à 14:51
Ca marche pas trop non plus.

J'ai peut être trouvé un truc mieux:

this.textField.addKeyListener
(
new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if (e.getKeyCode() == 52) // C'est le code de la quote
{
e.consume();
}
}
}
);

Mais il me faudrait une commande qui dit que lorsque la touche de quote est saisie, l'évènement n'est pas pris en compte. Et ça je sais pas comment on fait.
Help me please !!!
0
Rejoignez-nous