Trucos Emulación del DTPicker con el MonthView

El control DTPicker está bien pero no permite dejar la fecha en blanco, lo cual hace que no puedas usarlo en multitud de ocasiones (a mí no me parece "serio" lo de activar un checkbox para indicar que el valor del campo es el que se ve).
Otro de los controles presentes en el Microsoft Windows Common Controls-2 del VB 6.0 es el MonthView que es el "calendario mensual" que aparece cuando pinchas el botón que tiene el DTPicker a su derecha. Con este control podemos hacer la parte más vistosa e interesante (a mi gusto) del DTPicker que es mostrar un calendario para que el usuario seleccione una fecha con el ratón.
Para ello lo que he hecho es incluir en un formulario dicho control y un poco de código.

Para utlizarlo simplemente ponemos un boton (o el control que queramos) con el código :
frmCalendario.Campo = UnTextBox

Y entonces :

- Automáticamente se muestra un calendario justo debajo del textbox.
- Si no se viera por completo ajusta automáticamente su posición para que quepa en la pantalla.
- Podemos seleccionar la fecha pinchando con el botón izquierdo del ratón o moviéndonos con las teclas de cursor y pulsando Enter y la fecha seleccionada pasa automáticamente al textbox.
- Si pulsamos Escape o pinchamos con el botón derecho se cierra el calendario sin modificar la fecha.
- Si cuando se mostró el calendario había una fecha válida en el textbox se muestra seleccionada.
- Si quisiéramos mover el calendario basta con arrastrarlo pinchando con el botón izquierdo mientras tenemos pulsado Ctrl o Shift, aunque sólo funciona en Windows 9X, en NT 4.0 no funciona. ¿En Windows 2000? No sé.

Aprovecho para recordaros que si pinchamos en el nombre del mes aparece un menú con los meses del año y si pinchamos en el año nos aparece una barra de scroll que nos facilita el cambio.

Download calendario.zip  



Trucos Trucos

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com