procedure TFormMain.MenuOpenClick(Sender: TObject); var i,j, PhotosPrRow,PhotoNumber: integer; Photo: TImage; Files: TStrings; begin OpenPictureDialog.Execute; Files:=OpenPictureDialog.Files; PhotoList:=OpenPictureDialog.Files; PhotoCount:=PhotoList.Count; PhotosPrRow:=(FormMain.Width - PhotoSpace) div (MiniPhotoWidth + PhotoSpace); edit1.text:=inttostr(Ceil(PhotoCount / PhotosPrRow) - 1); for i:=0 to (Ceil(PhotoCount / PhotosPrRow) - 1) do begin for j:=0 to (PhotosPrRow - 1) do begin PhotoNumber:=i*PhotosPrRow+j; Photo:=TImage.Create(FormMain); Photo.Parent:=FormMain; Photo.Name:='Photo'+IntToStr(PhotoNumber); Photo.Top:=PhotoSpace+i*(PhotoSpace+MiniPhotoHeight); Photo.Left:=PhotoSpace+j*(PhotoSpace+MiniPhotoWidth); Photo.Width:=MiniPhotoWidth; Photo.Height:=MiniPhotoHeight; Photo.Picture.LoadFromFile(Files[PhotoNumber]); if PhotoCount=PhotoNumber then exit; end; end; end;