PDA

Ver la Versión Completa : Color de Fondo del canvas y tamaño


bpazzetti
20-03-2005, 02:07:43
procedure DibujaCuadrito(Canvas: TCanvas; const x, y: Integer;
const Color: TColor; const Signo: Char);
var
AnchoCaracter, AltoCaracter: Integer;
begin
Canvas.Font.Name := 'Courier New';
Canvas.Font.Style := [fsBold];
Canvas.Font.Size := 16;
Canvas.Font.Color := Color xOr $00FFFFFF;
AnchoCaracter := Canvas.TextWidth(Signo);
AltoCaracter := Canvas.TextHeight(Signo);
Canvas.Brush.Color := Color;
Canvas.TextRect(Rect(x,y,x+TamanoCuadro,y+TamanoCuadro),
x+(TamanoCuadro-AnchoCaracter) div 2,
y+(TamanoCuadro-AltoCaracter) div 2,Signo);
end;

procedure Numeropositivo(numero: integer);
var
i: integer;
begin
form2.image1.picture := nil;
form2.iDibujo.Picture := nil;
form2.Image2.picture := nil;
for i := 1 to Numero do
DibujaCuadrito(form2.iDibujo.Canvas,i*(TamanoCuadro + 5),60,clYellow,'+');
for i:= 1 to numero do
DibujaCuadrito(form2.image1.Canvas,i*(TamanoCuadro + 5),60,clYellow,'+');
DibujaCuadrito(form2.image1.Canvas,i*(TamanoCuadro + 5),60,clBlue,'-');
for i:= 1 to numero+2 do
begin
DibujaCuadrito(form2.image2.Canvas,i*(TamanoCuadro + 5),60,clYellow,'+');
DibujaCuadrito(form2.image2.Canvas,(i+2)*(TamanoCuadro + 5),60,clBlue,'-');
end;
end;



Este procedimiento lo uso para dibujar una cantidad de cuadraditos indicada por el usuario en tres diferentes TImage, mi problema es el siguiente:

Como hago para cambiarle el color de fondo del canvas,(de blanco a otro color)
Como hago para que el TImage se adapte al tamaño del canvas
De antemano les agradezco su ayuda