Olá Joel!
Para percorrer os componentes eu executaria uma rotina assim:
procedure PaintShapes;
var
I: integer;
tempComp: TComponent;
begin
for I := 1 to 31 do
begin
tempComp := Components.FindComponent(Format('p%d', [I]));
if (tempComp <> nil) and (tempComp is TShape) then
// Executar a alteração da cor
end;
end;
Uma sugestão:
Se as cores de cada dia são fixas, você pode criar um array constante
mapeando as cores, como por exemplo:
const
DayToColor: array[1..31] of TColor = (clBlue, clRed, clOlive,
clGreen, clInfoBk, clGray, ...);
E na linha que comentei na Procedure exemplo, poderá escrever:
TShape(tempComp).Color := DayToColor[I];
Espero ter ajudado!
Josimar Zimermann
Em 25/8/2010 10:27, Joel Alexandre escreveu:
>
> Bom dia pessoal,
>
> Galera, estou com uma duvida aqui e deu branco. Tenho 31
> componentes tipo TShape com nos names de p1 a p31. Gostaria de pintá-los
> conforme o dia atual. Alguem teria uma ideia de como fazer isso?
>
> Abraços e já agradeço qq ajuda
> Joel
>
> __.
[As partes desta mensagem que não continham texto foram removidas]