Puedes crearte una "StringGrid" de 13 columnas por 32 filas.
Y llenarlo con este código:
procedure TForm1.Button1Click(Sender: TObject);
var
aMeses: array[1..12] of string;
aDias : array[1..12] of Integer;
fila,columna:Integer;
n,j:Integer;
begin
n:=0;
j:=0;
aMeses[1] :='Enero';
aMeses[2] :='Febrero';
aMeses[3] :='Marzo';
aMeses[4] :='Abril';
aMeses[5] :='Mayo';
aMeses[6] :='Junio';
aMeses[7] :='Julio';
aMeses[8] :='Agosto';
aMeses[9] :='Septiembre';
aMeses[10]:='Octubre';
aMeses[11]:='Noviembre';
aMeses[12]:='Diciembre';
aDias[1] :=31;
aDias[2] :=28;
aDias[3] :=31;
aDias[4] :=30;
aDias[5] :=31;
aDias[6] :=30;
aDias[7] :=31;
aDias[8] :=31;
aDias[9] :=30;
aDias[10]:=31;
aDias[11]:=30;
aDias[12]:=31;
for n:=1 to 12 do
begin
StringGrid1.Cells[n,0]:=aMeses[n];
end;
for n:=1 to 12 do
begin
for j:=1 to aDias[n] do
begin
StringGrid1.Cells[n ,j]:=IntToStr(j);
end;
end;
end;
Ahora ya solamente te queda imprimir el StringGrid, en el Foro hay varias citas sobre imprimir un StringGrid.
Nota: el mes de Febrero lo he dado con 28 días, pero con un pequeño arreglo, es decir utilizando un If y la funcion IsLeapYear, determinaríamos si tiene 28 ó 29.
Un Saludo.
Última edición por marcoszorrilla fecha: 17-05-2003 a las 16:03:38.
|