Utilisation de JFormattedTextField pour la saisie numérique
Bien que JFormattedTextField ne soit pas spécifiquement conçu pour la saisie numérique, il excelle en tant qu'outil polyvalent pour valider la saisie de l'utilisateur par rapport à divers formats. En choisissant un format approprié, il peut gérer un large éventail de types d'entrée, y compris des valeurs numériques.
Exemple de code :
NumberFormat integerNumberInstance = NumberFormat.getIntegerInstance(); ImprovedFormattedTextField integerFormattedTextField = new ImprovedFormattedTextField(integerNumberInstance, 100);
Dans cet exemple, nous utilisons NumberFormat.getIntegerInstance() pour créer un format pour les nombres entiers. La classe ImprovementdFormattedTextField étend JFormattedTextField avec des fonctionnalités supplémentaires telles que des changements de couleur d'arrière-plan en fonction de la validité de l'entrée, un comportement amélioré du curseur et désactive les liaisons de touches lorsque l'entrée n'est pas valide.
ParseAllFormat pour une analyse complète des valeurs :
Pour garantir que le champ de texte n'accepte que les valeurs qui peuvent être complètement analysées par le formateur, nous employons le décorateur ParseAllFormat. Cela empêche une analyse partielle et garantit que l'intégralité de la saisie de l'utilisateur est conforme au format spécifié.
Implémentation améliorée du champ de texte formaté :
L'exemple de code fourni inclut une implémentation améliorée de la classe AmélioredFormattedTextField avec le décorateur ParseAllFormat. Il offre des fonctionnalités d'utilisation améliorées et une meilleure gestion des erreurs par rapport au JFormattedTextField standard.
Implémentation du retour visuel :
Pour le retour visuel, la classe AmélioredFormattedTextField modifie la couleur d'arrière-plan en fonction de validité des entrées. Cela sert d'indication immédiate de la validité de la saisie de l'utilisateur, améliorant ainsi l'expérience utilisateur.
Considérations supplémentaires :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!