Sección de tutoriales y manuales vb

Control MonthView - Control de calendario - Almanaque

Volver al índice



 

 

Guía con ejemplos para utilizar el control MonthView de vb

 

 


1 - Descripción del control

El control MonthView es un control Ocx que se añadió en la versión 6 de visual basic y permite implementar calendarios o almanaques.

Este ocx se añade a un proyecto como cualquier otro ocx desde el menú componentes bajo el nombre de Microsoft Windows Common controls - 2 6.0.

 

vista de la ventana de componentes de vosiaul basic para añadir el control de calendario al proyecto

 

Este Componente no solo contiene el control MonthView, también incluye otros 3 que son el control DtPicker, UpDown y FlatScrollBar

 

Vista del control MonthView:

Previa del Control MonthView - Control almanaque calendario

 

Este control es muy fácil de usar.

Como se ve en la imagen anterior, este tiene 2 flechas de Scroll al costado para poder movernos y desplazarnos por los meses que presenta el almanaque

 


2 - Página de propiedades

 

Para configurar el control podemos acceder a todas sus propiedades desde la ventana de propiedades de Visual Basic, aunque las principales y las mas importantes están mas cómodas y a mano desde la ficha Custom o personalizado.

Esta tiene 3 solapas:

 

Una previa de la página de propiedades:

 

vista previa de la página de propiedaes del Month view

 

Nota: La solapa general es la que tiene las propiedades mas importantes.

 

3 - Propiedad Value

La propiedad Value es la fecha seleccionada en el almanaque, mejor dicho la fecha asignada para el control actualmente.

Si establecemos esta fecha desde la ventana Custom, al ejecutar el programa, el MonthView mostrará dicha fecha.

Si nosotros apenas insertamos un control MonthView en un formulario, este tendrá como propiedad Value la fecha establecida en el sistema.

Para poder establecer en tiempo de ejecución dicha propiedad, basta solo con pasarle a la propiedad Value un valor de tipo Date.

El siguiente ejemplo al presionar un Command1, le establece como Value la fecha 01/01/06.

 

Private Sub Command1_Click()
Dim fecha As Date

fecha = "01/01/06"

MonthView1.Value = fecha

End Sub

 

Automáticamente al establecerle una fecha, el control MonthView visualiza la misma.

Nota: La propiedad Value es la default o propiedad por defecto del control, por lo tanto esto también es válido:

MonthView1 = "01/01/2001"

 

4 - Propiedades MinDate y MaxDate

Estas 2 propiedades establecen y devuelven las fechas mínimas y máximas que deberá visualizar y aceptar el MonthView. Por defecto al incluirlo en un proyecto, tiene asignado para el valor MinDate la fecha 01/01/1753 y para el MaxDate 31/12/9999.

 

Un ejemplo de esto último:

Agrega un control MonthView1, y en el FormLoad le establecemos algunos valores a estas dos propiedades:

 

Private Sub Form_Load()

MonthView1.MinDate = "01/01/2006"

MonthView1.MaxDate = "31/12/2006"

End Sub

 

Al hacer esto, el control solo visualizará y aceptará fechas en ese rango o intervalo establecido. Por lo tanto si le asignáramos alguna fecha a la propiedad Value que no esté en ese rango, se produciría un error en tiempo de ejecución:

Error 35773. "Se especifico una fecha que no está en el intervalo entre las propiedades MinDate y MaxDate"

El siguiente ejemplo produce el error anterior:

 

MonthView1.MinDate = "01/01/2006"
MonthView1.MaxDate = "31/12/2006"

'Esta línea produce el error
MonthView1.Value = "01/01/2010"

 

 

5 - Propiedad ShowWeekNumbers

ShowWeekNumbers tiene 2 posibles valores, True o False, y lo que hace es mostrar o no, si al costado del almanaque se visualiza una fila mostrando los números de la semana, por defecto esta está en False y no muestra dicha fila:

Por ejemplo:

 

vista previa de la propiedad showweekNumbers

 


6 - Propiedad ShowToday

ShowToday determina si en el MonthView se visualizará en la parte inferior la leyenda "Hoy: la fecha". Por defecto está en True, es decir que se visualiza

 


7 - Propiedades MonthRow y MonthColumns

MonthRow determina la cantidad de filas que presentará el control para mostrar los meses y MonthColumns la cantidad de columnas. Por defecto al insertar un MonthView al formulario estas tienen el valor1, es decir visualiza un solo mes.

Nota importante: El MonthView solo puede visualizar por pantalla 12 meses por lo tanto estas propiedades al usarlas en conjunto no deben sobrepasar la cantidad de 12.

Por ejemplo si le especificamos para las filas el número 4, y para las columnas el número 3, podríamos visualizar 12 meses, Otro ejemplo: Si especificamos para las filas 3 y para las columnas 3 visualiza 9 meses, pero si le especificamos , por decir otro ejemplo, en MonthRow 2 y en MonthColumns 8, daría un error, ya que 2 * 8 = 16 y sobrepasa al valor 12 que es el máximo permitido.

 

8 - Propiedad ScrollRate

ScrollRate devuelve y establece la cantidad de meses que se desplazarán al movernos por las flechas de Scroll. Por defecto, al desplazarnos se va de uno en uno, dependiendo el valor establecido en ScrollRate desplazará tantos meses le indiquemos en dicha propiedad.

 

9 - Propiedad MultiSelect

La propiedad Multiselect nos permite poder seleccionar mas de una fecha en el control. Por defecto está en False y solo puede tener 1 sola fecha seleccionada. Si está en True podemos seleccionar un intervalo de fechas.

Si queremos obtener las fechas seleccionadas, es decir la primera y última que conforman el rango seleccionado, podemos utilizar 2 propiedades que devuelven dichos valores, estas son : SelStart y SelEnd:

Un ejemplo para probar estas 2 propiedades: coloca el MonthView con el MultiSelect en True. Ahora agrega 2 controles Label, el Label 1 mostrará la primer fecha del rango y el Label2 la última fecha.

 

Private Sub MonthView1_DateClick(ByVal DateClicked As Date)

Label1 = MonthView1.SelStart
Label2 = MonthView1.SelEnd

End Sub

 

El ejemplo anterior se produce en el Evento DateClick, que se ejecuta al presionar o seleccionar una fecha.

Nota importante: Para usar la propiedad MultiSelect podemos utilizar la propiedad MaxSelCount. Esta Devuelve o establece el límite del número de fechas que se puede seleccionar de forma múltiple (por defecto está en 7).

Por lo tanto se puede utilizar esta propiedad, solo cuando MultiSelect está en True, de lo contrario dará un error. Por ejemplo esto no se puede hacer ya que da un error en tiempo de ejecución:

 

MonthView1.MultiSelect = False
MonthView1.MaxSelCount = 25

 

10 - Eventos del MonthView

 

El Evento DateClick recibe como parámetro una variable llamada DateClicked. Esta variable es la fecha seleccionada.

El evento SelChange, tiene 3 parámetros, uno es la fecha inicial y el otro es la fecha final (StartDate y EndDate). El último parámetro es cancel que es para cancelar el evento si lo deseamos, para hacerlo debemos establecerla en True.

Por último, este tiene muchas mas propiedades, pero la mayoría de estas están relacionadas a su interfaz y visualización y como se dijo mas arriba se pueden configurar de una forma fácil desde la ficha Custom

 

11 - Enlaces relacionados

 


Volver al índice

 

 


Buscar en Recursos vb