2008-09-17 3 views
1

J'ai eu des problèmes pour créer un objet JFormattedTextField afin d'utiliser des dates au format jj/mm/aaaa. Plus précisément, lorsque l'utilisateur tape, le curseur devrait "sauter" les barres obliques, et accéder directement à la position numérique suivante. De plus, le JFormattedTextField doit vérifier si la date entrée est valide et la rejeter d'une manière ou d'une autre si la date est invalide, ou la "corriger" à une date valide, par exemple si l'utilisateur saisit "13" comme mois. comme "01" et ajouter +1 à l'année.Java JFormattedTextField pour saisir des dates

J'ai essayé d'utiliser un masque ("##/##/####") avec la méthode validate() de JFormattedTextField pour vérifier si la date est valide, mais il semble que ces deux ne fonctionnent pas bien ensemble (ou je suis trop vert sur Java pour savoir comment ... :), et alors l'utilisateur peut taper n'importe quoi sur le terrain.

Toute aide est vraiment appréciée! Merci!

Répondre

0

Vous pouvez avoir à utiliser un JTextField régulière et appelez setDocument() avec un document personnalisé. Je recommande d'étendre PlainDocument, ce qui facilite la validation des entrées lors de la modification du document et l'ajout de barres obliques, le cas échéant.

1

essayer d'utiliser JCalendar

Questions connexes