Delphi - Ejecutar en secuencia 6 Images en un form

 
Vista:

Ejecutar en secuencia 6 Images en un form

Publicado por Nando (41 intervenciones) el 06/08/2004 02:40:11
Hola amigos!!
Necesito ayuda y es así:

Como debo hacer para ejecutar en secuencia 6 images, una de otra cada 1segunso aprox..
O sea primero ejecuto image1, tiempo, luego desaparece image1. Ahí viene image2, tiempo, y desaparece image2, así sucesivamente hasta la image6.
Pues quiero dar un efecto como si fuera una animación.

Sé que para 1 image es image1.visible:=true; y en propiedads visible en true, ademãs de colocar um Timer.

Es posíble? Cómo?

Nando
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ejecutar en secuencia 6 Images en un form

Publicado por Dr Juzam (821 intervenciones) el 06/08/2004 03:00:06
Te pongo un código de ejemplo. Son 3 imágenes que salen en secuencia, una tras otras. Sólo debes poner un TImage con la propiedad Picture en blanco en el Form y luego decirle la ruta de las imágenes que quieras cargar.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;

type
TForm1 = class(TForm)
Image1: TImage;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
Tiempo: Byte;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Picture := nil;
Case Tiempo mod 3 of
0: Image1.Picture.LoadFromFile('D:\Imagen1.bmp');
1: Image1.Picture.LoadFromFile('D:\Imagen2.bmp');
2: Image1.Picture.LoadFromFile('D:\Imagen3.bmp');
end;
inc (Tiempo);
if Tiempo=3 then
Tiempo:=0;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Tiempo:=0;
end;

end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ejecutar en secuencia 6 Images en un form

Publicado por Nando (41 intervenciones) el 07/08/2004 00:27:23
Mucha gracias por responderme. Voy a seguír tu ejemplo, mi única duda es que estoy trabajando con Delphi 5 y el archivo variants si no me equivoco es a partír de delphi 6.
El delphi 5 usa componente DgsIntf.dcu.
¿ Crees que puede hacer problema en la ejecución ?
Ahora apenas lo ejecute te contesto.
Un abrazo.
Nando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Perfecto!!

Publicado por Nando (41 intervenciones) el 08/08/2004 04:08:11
Hola: Amigo Dr Juzam. Muchas gracias , funcionó muy bien.

Nando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cómo logro pararlo!!

Publicado por Nando (41 intervenciones) el 08/08/2004 04:12:06
Un problemita a lo último es como hacer para que deje de ejecutarce cuando lo deseo.Un boton cancelar?
Nando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Cómo logro pararlo!!

Publicado por Dr Juzam (821 intervenciones) el 08/08/2004 05:20:31
Muy fácil. Como el código se ejecuta en un timer, para pararlo (en un botón o donde quieras), sólo debes poner Timer1.Enabled:=false. El Timer se para y con él la secuencia de imágenes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ejecutar en secuencia 6 Images en un form

Publicado por Delfino (1216 intervenciones) el 08/08/2004 12:58:52
Seguro q hay componentes q permiten hacer esto y mucho mas, si no me falla la memoria hay un control Activex llamado PictueClip, pero seguro q hay controles nativos Delphi solo hay q buscar..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ejecutar en secuencia 6 Images en un form

Publicado por Nando (41 intervenciones) el 12/08/2004 07:43:23
OK!! Graciaas por sus conocimientos brindados!!!

1 Abrazo!!
Nando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar