var tbmp:tbitmap; //
procedure TForm1.Button1Click(Sender: TObject);
var img:array[0..2,0..2] of timage;
var i,j,step:integer;
begin
step:=tbmp.Width div 3;
for i:=0 to 2 do
begin
for j:=0 to 2 do
begin
img[i,j]:=timage.create(application);
img[i,j].parent :=form1;
img[i,j].Left :=j*step+10*j;
img[i,j].top :=i*step+10*i;
img[i,j].width :=step;
img[i,j].height:=step;
img[i,j].Canvas.CopyRect(rect(0,0,step,step),tbmp.Canvas ,rect(j*step,i*step,j*step+step,i*step+step));
end;
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
tbmp:=tbitmap.Create ;
tbmp.LoadFromFile('c:\1.bmp');
end;