Bonjour à tous,
Je suis face à un problème vraiment idiot.
J'ai crée un champs delta sur un formulaire qui doit contenir des valeurs spéciales. (que je vérifie à l'aide d'une regex)
Lorsque l'utilisateur appuie sur entree, je veux valider le champs et l'enregistrer dans une variable.
A contrario si le champs n'est pas valide , je veux afficher un message indiquant à l'utilisateur le bon format.
Le problème est la, lorsque la valeur n'est pas bonne, l'utilisateur recoit en effet un joptionpane lui indiquant que la valeur renseignée n'est pas bonne. Mais si on appuie a nouveau sur entree pour effacer le joptionpane , ca correspond a envoyer à nouveau entree dans le champs qui n'a pas encore été modifié.
Ce qui donne le joptionpane en boucle si je valide le bouton ok par la touche entrée.....
Je souhaiterais donc faire en sorte que la touche entree sur le joptionpane ne passe pas l'evenement touche entree sur mon champs. Je sais pas si c'est tres clair et si c'est possible
. n'hesitez pas pas me demander plus d'information si c'est pas clair.
Le bout de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 if (evt.getKeyCode() == KeyEvent.VK_ENTER) { String delta=new String(ongletProduitstChampsDelta.getText()); if (delta.matches("^[-+][123456789][0123456789]*")) print ("ok"); else { MessageErreur("Format non conforme","Le delta doit être de la forme +nombre ou -nombre. \n exemple : +1,-10 ..."); ongletProduitstChampsDelta.setText("+10"); }
Merci par avance.
Partager