Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #15  
Antiguo 20-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Maria.

En ese caso creo que sería más sencillo trabajar todo en un form.
Poné un TScrollBox, un TImage, un TTimer y un TPanel donde irán un TCheckBox (muestra aleatoria) y dos TButton (Start/Stop). El ejemplito es muy simple y lo hice sin mucho detalle, pero seguro que podrás usarlo como base para algo más elaborado y optimizado.

La pantalla queda así:



El código:
Código Delphi [-]
implementation  

uses contnrs, jpeg;

var
  ObjList: TObjectList;

// Mostrar imágen
procedure TForm1.ShowImage(AImage: TImage);
begin
  Image1.Picture:= nil;
  Image1.Picture:= AImage.Picture;
end;

// Imagen OnClick
procedure TForm1.ImageClick(Sender: TObject);
begin
  ShowImage(TImage(Sender));
end;

// Buscar y cargar imagenes en ObjectList
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:= 120 * n + 10;
          Top := 10;
          Stretch:= True;
          Picture.LoadFromFile(Ruta+'\'+SR.Name);
          Parent:= ScrollBox1;
          OnClick:= ImageClick;  
          Inc(n);
        end;
      end
    until FindNext(SR) <> 0;
    FindClose(SR)
  end
end;

// Form OnCreate
procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
  Timer1.Enabled:= False;
  ObjList:= TObjectList.Create;
  BuscarImagenes('C:\RUTA_A_TUS_IMAGENES')
end;

// Timer OnTimer
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Inc(FImgCount);
  if CheckBoxRnd.Checked then
    FImgCount:= Random(ObjList.Count)
  else if FImgCount = ObjList.Count then
    FImgCount:= 0;
  ShowImage(TImage(ObjList.Items[FImgCount]));
end;

// Comenzar muestra
procedure TForm1.btnStartClick(Sender: TObject);
begin
  if CheckBoxRnd.Checked then
    FImgCount:= Random(ObjList.Count)
  else
    FImgCount:= 0;
  Timer1.Enabled:= True;
  ShowImage(TImage(ObjList.Items[FImgCount]));
end;

// Finalizar mostrar 
procedure TForm1.btnStopClick(Sender: TObject);
begin
  Timer1.Enabled:= False;
end;
end.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 20-04-2012 a las 21:51:02.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Recorrer directorio Pedro-Juan Conexión con bases de datos 4 09-02-2011 18:50:43
Mostrar ficheros de un directorio y subdirectoros chinchan C++ Builder 3 11-01-2009 22:26:49
Mostrar directorio con ShellExecute MON___ API de Windows 5 26-03-2008 13:07:00
Borrar archivos de un directorio nelem Internet 6 29-10-2007 16:04:00
Mostrar un directorio con el explorador de archivos de windows Jan_polero API de Windows 2 11-01-2005 18:40:21


La franja horaria es GMT +2. Ahora son las 00:43:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi