Paint a Form with a tiled bitmap image

Here’s how to draw tiled bitmap image on a Form:

type
   TForm1 = class(TForm)
     procedure FormCreate(Sender: TObject) ;
     procedure FormPaint(Sender: TObject) ;
     procedure FormClose(Sender: TObject;
                         var Action: TCloseAction) ;
   private
   public
   end;

var
   Form1: TForm1;

   Bitmap: TBitmap;

procedure TForm1.FormCreate(Sender: TObject) ;
begin
   Bitmap := TBitmap.Create;
   Bitmap.LoadFromFile(‘C:\WINDOWS\cars.BMP’) ;
end;

procedure TForm1.FormClose
   (Sender: TObject; var Action: TCloseAction) ;
begin
   Bitmap.Free;
end;

procedure TForm1.FormPaint(Sender: TObject) ;
var
   X, Y, W, H: LongInt;
begin
   with Bitmap do begin
     W := Width;
     H := Height;
   end;
   Y := 0;
   while Y < Height do begin
     X := 0;
     while X < Width do begin
       Canvas.Draw(X, Y, Bitmap) ;
       Inc(X, W) ;
     end;
     Inc(Y, H) ;
   end;
end;

Leave a Reply

Your email address will not be published. Required fields are marked *