Comunidad de diseño web y desarrollo en internet online

Tutorial del componente DateField de Flash

Para realizar este tutorial es imprescindible que antes hayas realizado el tutorial del componente DateChooser, ya que estos componentes comparten la mayoría de sus propiedades y eventos.

Para empezar, lo que haremos será poner un componente DateField en nuestra biblioteca como es normal, y copiaremos y pegaremos el código que teníamos hecho en el componente DateChooser. Cambiaremos la primera línea para atachear bien nuestro componente:

attachMovie("DateField", "mi_calendario", 1);
En este componente lo que podremos hacer es darle un formato a la fecha a mostrar en la casilla. Así podemos mediante dateFormatter, cambiar el estilo de la fecha a nuestro gusto. Vamos a probar poniendo esto debajo de nuestras propiedades:
//Formato de la fecha que se muestra en la casilla del calendario
mi_calendario.dateFormatter = function(lafecha:Date) {
//Si el día es menor qe 10 ponemos un "0" delante
if (lafecha.getDate()<10) {
mostrardia = "0"+lafecha.getDate();
} else {
mostrardia = lafecha.getDate();
}
//Si el mes es menor que 10 ponemos un "0" delante
if ((lafecha.getMonth()+1)<10) {
mostrarmes = "0"+(lafecha.getMonth()+1);
} else {
mostrarmes = lafecha.getMonth()+1;
}
//Aquí hacemos el formato que queremos
return mostrardia+"/"+mostrarmes+"/"+lafecha.getFullYear();
};

Al hacer el return estamos pasandole un nuevo formato de fecha a mostrar en la etiqueta de nuestro componente DateField.

Este componente, también tiene dos eventos nuevos, que son open y close. Estos controlan cuando se abre o cierra el menú. Vamos a añadir los listeners para estos eventos, y a programar unos traces para ver si funciona bien, añadamos este código a nuestros eventos.

//Listener para cuando abrimos el calendario
alAbrir = new Object();
alAbrir.open = function(evento) {
trace("Has abierto "+evento.target);
};
//Listener para cuando cerramos el calendario
alCerrar = new Object();
alCerrar.close = function(evento) {
trace("Has cerrado "+evento.target);
};
//Creamos los listeners
mi_calendario.addEventListener("open", alAbrir);
mi_calendario.addEventListener("close", alCerrar);

Añadiendo estos listeners podemos saber si el usuario ha abierto o cerrado nuestro DateField.

Este componente también tiene algo que DateChooser no tiene, métodos. Los métodos los podemos llamar cuando queramos, y ejecutan acciones en nuestros componentes. En este caso los métodos se llaman open() y close(), y no hay que confundirlos con los eventos, los eventos van sin los paréntesis, es importante diferenciar este punto.

Añade dos botones en tu escena y llamalos abrir_btn y cerrar_btn, ahora añade este código al final del todo:

abrir_btn.onPress = function() {
mi_calendario.open();
};
cerrar_btn.onPress = function() {
mi_calendario.close();
};

Ahora al apretar los botones podemos abrir y cerrar el calendario sin tener que apretar en el.

Y con esto ya esta todo, son muy similares, pero se usan para cosas diferentes ambos calendarios. Elegid vuestro estilo ; )

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Descargar Archivo

Publica tu comentario

El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro

Entra al foro y participa en la discusión

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate