Spanish Problema con Custom Calendar

Discussion in 'Spanish Forum' started by nicomx, May 21, 2013.

  1. nicomx

    nicomx Member Licensed User

    Problema con Custom Calendar (Solucionado)

    Hola a tod@s

    Hace tiempo que me vengo pegando con estas clases

    Custom calendar class y
    [Class] AnotherDatePicker

    Preferiria utilizar "Custom calendar class" pero me pasa lo mismo con las dos

    Estoy haciendo un calendario simple con un monton de eventos, cálculos de horas y tal pero no soy capaz de hacer que el dichoso calendario arranque en lunes.
    Puede que sea por el desanimo de no conseguirlo pero no veo por donde meterle mano a esto.

    Alguien me echa un cable?

    Un saludo y gracias por anticipado

    Eugenio J. Sánchez
     
    Last edited: May 26, 2013
  2. vampirbcn

    vampirbcn Active Member Licensed User

  3. nicomx

    nicomx Member Licensed User

    Solucionado

    Hola a tod@s

    Os dejo las soluciones a las dos clases por si a alguien mas le viene bien.

    Custom Calendar

    Para cambiar los días de la semana y que comience en Lunes en vez de en Domingo vamos a cambiar la linea:

    Code:
    Public NmFullday(8As String : NmFullday = Main.Local.WeekDays 'NmFullday = Array As String("Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi")
    Por esta otra:

    Code:
    Public NmFullday(8As String : NmFullday = Array As String("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo")
    Pero con esto solo no basta, de echo, solo hemos cambiado el nombre de las etiquetas, ahora para cambiar el orden de los días en el calendario cambiamos la linea:


    Code:
    nday = (DateTime.GetDayOfWeek(SomeTime)-1)  'FirstDayOfWeek = Sunday
    Por esta otra:

    Code:
    nday = (DateTime.GetDayOfWeek(SomeTime)-2)  'FirstDayOfWeek = Monday
    Y con esto ya tenemos nuestro calendario empezando en Lunes y totalmente funcional


    AnotherDatePicker

    La primera linea que vamos a cambiar cambiar es la de los label que son los que contienen el nombre de los días, así que modificamos la linea:

    Code:
    daysNames = Array As Label(Label1, Label2, Label3, Label4, Label5, Label6, Label7)
    Y la dejamos así:

    Code:
    daysNames = Array As Label(Label7, Label1, Label2, Label3, Label4, Label5, Label6)
    Como veis solo hemos cambiado el orden de los label, desplazandolos una posición a la izquierda.


    Y ahora cambiamos la linea:

    Code:
    dayOfWeekOffset = DateTime.GetDayOfWeek(firstDay) Mod 7
    Por esta otra:

    Code:
    dayOfWeekOffset = DateTime.GetDayOfWeek(firstDay) -1 Mod 7
    Y listo, ya tenemos la clase cambiada para que arranque en Lunes y funcionando ;)


    Gracias a vampirbcn por mostrarme lo que había leido 20 veces y aun así no era capaz de ver lo evidente ;-)

    Para los vaguetes, os dejo las dos clases modificadas

    Y un nuevo post sobre esto en mi blog :)
    http://www.ailecsoft.es/2013/05/calendario-y-primer-dia-de-la-semana.html


    Un saludo a tod@s
     

    Attached Files:

    Last edited: May 24, 2013
    PacoViv likes this.
Loading...