Pintar os dias em negrito no MonthCalendar

Delphi

25/11/2013

Pessoal, boa tarde!

Já pesquisei em vários fóruns aqui tentei várias dicas porém não consegui resolver esse meu problema.
O código que desenvolvi para negritar alguns dias do calendario não está funcionando.

Segua abaixo o código:
Alguém poderia me auxiliar? Observo que o código roda porem ACHO que o array não está sendo populado com os valores, fica zerado.

procedure TForm_At003.CalendarioGetMonthInfo(Sender: TObject; Month: Cardinal; var MonthBoldInfo: Cardinal);
var
dias : array of cardinal;
Data : TDateTime;
DateNow : TDateTime;
begin

if Grid_Dados.Fields[0].AsInteger > 0 then
begin

SqlRapido(_QryCalendario, ' SELECT DISTINCT VW_AGENDA.DATA_MARCACAO FROM VW_AGENDA ' +
' WHERE VW_AGENDA.CODIGO_PRESTADOR = ' + _QryDbGrid.Fieldbyname('Codigo_Prestador').Asstring +
' AND EXTRACT(MONTH FROM VW_AGENDA.DATA_MARCACAO) = ' + IntToStr(Month) +
' AND EXTRACT(YEAR FROM VW_AGENDA.DATA_MARCACAO) = ' + FormatDateTime('YYYY',Calendario.Date) +
' ORDER BY DATA_MARCACAO DESC ' ,'A');

while not _QryCalendario.Eof do
begin

Data := _QryCalendario.FieldByName('Data_Marcacao').AsDateTime;
SetLength(dias,_QryCalendario.RecordCount);
DateNow := StrToInt(FormatDateTime('MM', Data));

if Month = DateNow then
begin

MonthBoldInfo := 0;
dias[_QryCalendario.RecNo -1] := StrToInt(FormatDateTime('DD', Data));
Calendario.BoldDays(dias,MonthBoldInfo);

end;

_QryCalendario.Next;

end;

end;

end;
Pantocrator Ltda

Pantocrator Ltda

Curtidas 0

Respostas

POSTAR