Ver Mensaje Individual
  #3  
Antiguo 10-09-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Reputación: 24
andres1569 Va por buen camino
Hola:

Desde luego, ni se te ocurra crear 120 formularios para almacenar en cada uno 5 imágenes diferentes, a parte eso supone cargar en exceso el programa con imágenes, aunque estas sean en formato jpg.

Imagino que las imágenes se cargan desde una carpeta que tienes localizada. Voy a suponer que tienen nombres serializados, al estilo de Imagen0001, Imagen0002, ..., con ellos se simplifica la cosa porque ya sabemos de antemano los nombres de los ficheros que queremos cargar.

Supongamos también que has metido 5 componentes TImage en el formulario. Pues bien, creas una variable global NumImagen de tipo Integer, que almacena el número de la primera serie de imágenes que estás mostrando. Defines en el formulario un método CargaImagenes como el siguiente:

Código:
var
  NumImagen : Integer;

Implementation

procedure TForm1.CargaImagenes;
var
  NomArchivo : String;
begin
  NomArchivo := DirImagenes + '\Imagen';
  Image1.LoadFromFile (NomArchivo + FormatFloat ('0000', NumImagen + 1) + '.jpg');
  Image2.LoadFromFile (NomArchivo + FormatFloat ('0000', NumImagen + 2) + '.jpg');
  Image3.LoadFromFile (NomArchivo + FormatFloat ('0000', NumImagen + 3) + '.jpg');
  Image4.LoadFromFile (NomArchivo + FormatFloat ('0000', NumImagen + 4) + '.jpg');
  Image5.LoadFromFile (NomArchivo + FormatFloat ('0000', NumImagen + 5) + '.jpg');
end;

// inicializamos los TImage al cargar el formulario
procedure TForm1.Form1Create;
begin
  NumImagen := 0;
  CargaImagenes;
end;

procedire TForm1.BotonSiguientesClick (Sender: TObject);
begin
  if NumImagen = 595 then EXIT;
  Inc (NumImagen, 5);
  CargaImagenes;
end;

procedire TForm1.BotonAnterioresClick (Sender: TObject);
begin
  if NumImagen = 0 then EXIT;
  Dec (NumImagen, 5);
  CargaImagenes;
end;
Desarrollando esta idea debes conseguir lo que buscas. Si no tienes las imágenes con nombres serializados, de forma que se pueda deducir su nombre, lo ideal sería cargar en una lista (TStringList) los nombres de todos los ficheros .jpg, e ir cogiendo de ahí cada vez los nombres de los ficheros que queremos mostrar. Si tienes alguna duda sobre cómo hacer esto, vuelve a postear

Saludos
__________________
Guía de Estilo
Responder Con Cita