Pregunta

He tenido problemas para crear un JFormattedTextField para usar fechas con el formato dd/MM/aaaa.Específicamente, a medida que el usuario escribe, el cursor debe "saltar" las barras y pasar directamente a la siguiente posición numérica.

Además, JFormattedTextField debe verificar si la fecha ingresada es válida y rechazarla de alguna manera si la fecha no es válida, o "corregirla" a una fecha válida, por ejemplo, si el usuario ingresa "13" como mes, configúrelo como "01". " y agregue +1 al año.

Intenté usar una máscara ("##/##/####") con el método validar() de JFormattedTextField para verificar si la fecha es válida, pero parece que esos dos no funcionan bien juntos (o yo Soy demasiado verde en Java para saber cómo...:), y luego el usuario puede escribir cualquier cosa en el campo.

¡Cualquier ayuda es muy apreciada!¡Gracias!

¿Fue útil?

Solución

Es posible que tengas que usar un JTextField normal y llamar a setDocument() con un documento personalizado.Recomiendo extender PlainDocument, esto facilita validar la entrada a medida que cambia el documento y agregar barras según corresponda.

Otros consejos

intenta usar JCalendar

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top