domingo, 7 de junio de 2015

Desarrollar una interfaz gráfica en java: validar que la fecha introducida es superior a la fecha del sistema.

En el desarrollo de nuestra interfaz debemos introducir un campo para reservar una fecha para la celebración de un evento.  Cuando el usuario de la aplicación está realizando la reserva, evidentemente no podrá reservar para una fecha inferior o igual a la actual, que siempre será la fecha del sistema sobre el que trabaje nuestra aplicación.


/**
     * validarFechaEvento. Comprueba que la fecha introducida es mayor que la
     * fecha del sistema
     *
     * @return true si <code>el campo 'Fecha Hora'</code> es mayor que la fecha
     * del sistema, y false en caso que sea igual o menor.
     */
    protected static boolean validarFechaEvento() {

        try {
            SimpleDateFormat formateador = new SimpleDateFormat("dd/MM/yy HH:mm");
            Date fechaDate1 = ((Date) VentanaEvento.jSpinnerFecha.getValue());
            Date fechaDate2 = new Date();
            String fechaEvento = formateador.format(fechaDate1);
            String fechaSistema = formateador.format(fechaDate2);
            if (fechaDate1.before(fechaDate2)
                    || (fechaDate1.equals(fechaDate2))) {//Si fecha del evento es menor o igual que fecha evento.
                boolFechaCorrecta = false;
            } else {
                if (fechaDate2.before(fechaDate1)) {
                    boolFechaCorrecta = true;
                } else {
                }
            }
        } catch (Error e) {

            System.out.println("Se Produjo un Error!!!  " + e.getMessage());
        }
        return boolFechaCorrecta;
    }



Ahora solo tenemos que "enlazar" el método a la clase que desarrolla nuestra interfaz gráfica:

//Si el código postal es correcto, pasamos a comprobar la fecha del evento.
                else if (Validar.validarFechaEvento() == false) {
                    JOptionPane.showMessageDialog(null, "La fecha del evento debe de ser mayor"
                            + "que la fecha actual.", "ERROR: Fecha/Hora incorrecta.", JOptionPane.ERROR_MESSAGE);
                    boolDatosCorrectos = false;
                }


Ahora, si introducimos una fecha inferior o igual a la fecha del sistema, la aplicación nos lanzará un mensaje de error.

No hay comentarios:

Publicar un comentario

Colabora con tu comentario.