Visual Basic.NET - Ayuda proyecto de Calendario desde el año 1 hasta 3000

 
Vista:
Imágen de perfil de luisao
Val: 50
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por luisao (27 intervenciones) el 24/02/2019 23:14:39
Estimados amigos, buen dia,

Por este medio pido su colaboracion con ideas de como realizar este proyecto que es de la Universidad,
consiste en realizar un calendario que muestre mediante una Busqueda el año deseado.
Tiene que funcionar desde el año 1 hasta el año 3000

Lo que me debe mostrar en el Form son los 12 meses del año "X"

Amigos muchas gracias por su colaboracion.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por Phil Rob (1554 intervenciones) el 25/02/2019 17:52:46
Hola,

Las herramientas de VB no permiten los calculos ante 1783 y la organizacion actual del calendario no permite el calculo correcto ante el noviembre de 1582 (pero este interesa solo los historiadores).

« El calendario gregoriano es un calendario solar diseñado a fines del siglo XVI para corregir la deriva secular del calendario juliano en uso. A petición de Gregorio XIII, Christophorus Clavius preparó las bases de un nuevo calendario desde 1579. Adoptado por el Papa Gregorio XIII, en la burbuja pontificia "Inter gravissimas" del 24 de febrero de 1582, se implementa en los Estados católicos. 15 de octubre de 1582 (luego convertido en el próximo día del 4 de octubre de 1582). Su uso luego se extendió gradualmente en los países protestantes y en todo el mundo hasta mediados del siglo XX. » (Fuente : https://fr.wikipedia.org/wiki/Calendrier_gr%C3%A9gorien / Traducción Google)

Tiene que calcular las fechas desde 1583 hasta 3000 y más, sin utilizar las herramientas de VB, con el puro algoritmico.

Tiene que crear une tabla para los nombres del dias. En VB :

Dim Dias() As String = {"Sabado", "Domingo", "Lunes", "Martes", "Miéricoles", "Jueves", "Viernes"}

Los nombres del dias tienen entonce en los indices de 0 a 6.

Para conocer el nombre de un dia, tiene que calcular lo indice y para esta, tiene que primero calcular el numero de los dias entre la fecha a producir y una fecha de referencia (tomo la fecha del 01/01/2000 que es un sabado).

Para conocer el nombre de un dia, tiene que calcular lo indice y para esta, tiene que primero calcular el numero de los dias entre la fecha a producir y una fecha de referencia (tomo la fecha del 01/01/2000 que es un sabado). Es este numero de los dias Mod 7 que permite el calculo de l'indice.

El archivo adjuntado (CalendrierES.zip) contiene un projecto para probar la dificultad de los nombres de los dias.

Concernando las fechas, para calcular hasta 3000 y más, es facil de crear el algorimica qui agrega 1 para cada dia desde la fecha de referencia, y tambien es facil de crear el algorimica qui sustrae 1 para cada dia desde la fecha de referencia.

Espero que esto te ayudará ...

Fecha1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de luisao
Val: 50
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por luisao (27 intervenciones) el 25/02/2019 20:19:19
Gracias por tu respuesta.

logre avanzar un poco en este proyecto, lo que busco realizar es algo como en la imagen adjunta.

creo que puedo realizar lo de 1 año , pero no se como hacer que al digitar en txtBox un año especifico me lo muestre ya sea pasado o futuro.
es alli donde no encuentro la solucion aun.

gracias por tus comentarios.

Captura
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por Phil Rob (1554 intervenciones) el 25/02/2019 21:02:36
Veo mejor.

En los codigos que enviaba, las herramientas esenciales estan presentes.
"IndiceDelDia" calcula un indice del primero dia del mese (hace 3 para Martes de 1 de enero de 2019). Con -1, tienes el indice del numero 1 en la tabla de los numeros de los dias del mese. Tienes que remplizar el desarrollo hasta el ultimo dias que es da por "NumeroDiasHastaFinesMese".

Quizá miércoles, podré trabjar sobre este problema ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de luisao
Val: 50
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por luisao (27 intervenciones) el 25/02/2019 22:10:28
entiendo, tratare de implementar tus sugerencias.

gracias por tu apoyo,
si lo practicas y logras realizarlo , solo apoyame con ideas y sugerencias para programarlo yo mismo.

muchas gracias por todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 135
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por Agustin (39 intervenciones) el 26/02/2019 03:21:57
Aca te dejo un ejemplo de como lo haria yo: https://github.com/agleiva/calendario

- usando WPF
- usando DateTime y las APIs de .NET en lugar de hacer calculos manualmente
- tiene toda la funcionalidad de los botones Primero, Anterior, Siguiente, Ultimo
- todo el codigo es muy breve y simple. Sin complicaciones.
- respeta los inicios de mes, de acuerdo a los días de la semana, como un calendario impreso.
- Podes agregar facilmente los labels de "Dom", "Lun", "Mar", etc
- Si no entendés algo de cómo está hecho o el código, preguntame.

53382722-f2cb7680-3953-11e9-9202-8349252896aa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por Phil Rob (1554 intervenciones) el 27/02/2019 17:36:55
Hola,

Adjuntado, el archivo CalendrierES02.zip que contiende una respuesta a tu problema.
He limitado la fecha initial a el 1583 pero podes la cambiar ... si no temes el Papa Gregorio XIII ... :D)))
Las herramientas que he enviado el lunes son perfectas para este trabajo.
El real problema es en presentación ...
Depende de usted completar como desee.

Bueno diversión,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de luisao
Val: 50
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda proyecto de Calendario desde el año 1 hasta 3000

Publicado por luisao (27 intervenciones) el 02/03/2019 15:19:41
bajandolo ahorita mismo.
Gracias por tu ayuda bro.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar