Ver Mensaje Individual
  #6  
Antiguo 04-08-2021
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Reputación: 17
jhonalone Va por buen camino
Hola de nuevo amigos.
Creo que puedo facilitaros las cosas un poquito mas.

Si alguien no quiere estar "comiéndose el coco" para implantar esta funcionalidad en algún proyecto que ya tenga operativo, os explico a continuación cómo lo hice yo y funcionó a la primera.

Recuerdo que uso la versión 10.3.3.

1) Copiamos los ficheros siguientes (desde la carpeta donde hemos descomprimido el fichero "Prueba Calendario Club Delphi.rar") a la carpeta de nuestro proyecto donde tenemos el formulario que lleva el TCalendar.
FMX.Calendar.Helpers.dcu
FMX.Calendar.Helpers.pas
FMX.Calendar.Style.dcu
FMX.Calendar.Style.pas
FMX.CalendarHolidayDays.Style.dcu
FMX.CalendarHolidayDays.Style.pas
MainFrm.fmx
MainFrm.pas
(Estos dos últimos no se usarán en tu proyecto, pero te hará falta abrir MainFrm.pas en la pestaña "Design" para copiar el libro de estilos "stilbk1".)

2) Incorporamos un TCalendar, (si no lo teníamos), al formulario donde tenemos o queremos tener el TCalendar.

3) Copiamos el libro de estilos llamado "stilbk1", (que está en el fichero MainFrm.pas), en el Layout donde hemos puesto el TCalendar.

4) Añadimos, a la cláusula uses del formulario que lleva el TCalendar, los ficheros que nos falten de entre los siguientes:
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
FMX.Calendar, FMX.Controls.Presentation, FMX.MultiView, FMX.DateTimeCtrls, FMX.Layouts, FMX.ListBox,
FMX.Ani;

5) Después de la cláusula "implementation" añadimos estos ficheros al uses del formulario donde va el TCalendar:
uses
FMX.Calendar.Helpers, System.Rtti;

6) Añadimos al proyecto las unidades:
FMX.Calendar.Helpers
FMX.CalendarHolidayDays.Style

7) Añadimos al procedimiento OnCreate de nuestro formulario con el TCalendar:
Calendar1.Model.ShowWeekends := True;
Calendar1.Date := now;

8) Configuramos el TCalendar de este modo:
ControlType : Styled
FirstDayOfWeek : dowLocaleDefault
HitText : True
Name : Calendar1
ParentShowHint : False
Size/PlataformDefault : False
StyleLookUp : calendarstyle
TodayDefault : True

Con estos pasos, a mí me ha funcionado A LA PRIMERA en un proyecto que ya tenía terminado.

Ya sabéis que me gusta compartir mis soluciones.

Me alegraría saber que alguien se ha beneficiado de mis esfuerzos. Gracias.

Saludos a todos.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita