Hola MARIA_MAR.
Como dice mi compañero de penurias maritales, utilizando el visor de imágenes asociado es la forma más simple.
Pero si deseas hacerlo sobre el código anterior, tendrías que agregarle el evento
OnClick a la imágen creada:
Código Delphi
[-]
type
TForm1 = class(TForm)
...
private
procedure BuscarImagenes(const Ruta: string);
procedure ImageClick(Sender: TObject);
end;
...
implementation
...
procedure TForm1.ImageClick(Sender: TObject);
var
Frm: TForm;
Img: TImage;
begin
Frm:= TForm.Create(nil);
try
Frm.Caption:= 'PRESENTACION';
Frm.WindowState:= wsMaximized;
Frm.BorderStyle:= bsSingle;
Img:= TImage.Create(Frm);
Img.Align:= alClient;
Img.Stretch:= True;
Img.Parent:= Frm;
Img.Picture.Assign(TImage(Sender).Picture);
Img.Parent:= Frm;
Frm.ShowModal;
finally
Frm.Free;
end;
end;
procedure TForm1.BuscarImagenes(const Ruta: string);
var
SR: TSearchRec;
Img: TImage;
E: string;
n: Integer;
begin
if FindFirst(Ruta + '\*.*', faAnyFile, SR) = 0 then
begin
n:= 0;
repeat
E:= ExtractFileExt(SR.Name);
if (E='.jpg')or(E='.jpeg')or(E='.bmp')or(E='.emf')or(E='.wmf') then
begin
Img:= TImage.Create(Self);
ObjList.Add(Img);
with TImage(ObjList.Items[n]) do
begin
Height:= 80;
Width:= 80;
Left:= 10;
Top := 120 * n + 10;
Stretch:= True;
Picture.LoadFromFile(Ruta+'\'+SR.Name);
Parent:= ScrollBox1;
OnClick:= ImageClick; Inc(n);
end;
end
until FindNext(SR) <> 0;
FindClose(SR)
end
end;
...
Saludos.