Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Tiempo de espera (Necesito ayuda) (https://www.clubdelphi.com/foros/showthread.php?t=53550)

rauros 23-02-2008 15:37:31

Tiempo de espera (Necesito ayuda)
 
Saludos. No se si me explicaré bien. Lo que quiero es poner un "delay"(tiempo de espera) para que se active una función. Ejemplo

Código:

timer(25,label1.caption('Se acabó el tiempo'));
Este funcionaría con 25 segundos. Gracias de antemano a todos.

eduarcol 23-02-2008 15:39:07

Suponiendo que trabajes en Delphi agrega un Timer, y en el evento OnTimer agregas lo que quieres hacer.

El timer tiene una proipedad Interval, alli le indicas en milisegundos el tiempo que deseas

rauros 23-02-2008 16:17:52

Ya pero necesito más datos. Trabajo con delphi 7. He mirado en la ayuda rápida pero lo que hay no lo entiendo. Gracias de antemano.

eduarcol 23-02-2008 17:27:06

que mas datos necesitas?, a ver por partes:

- Agrega en control timer, es el relojito que esta en la paleta system
- Cambia la propiedad Interval al tiempo que necesites, la propiedad esta en milisegundos.
- En el evento onTimer programa lo que quieras hacer.

ixMike 23-02-2008 20:43:00

Me parece que lo que nuestro amigo necesita es dormir ;)..digo... Sleep :D

Código Delphi [-]
Sleep(25000); //Esperar 25 segundos
Label1.Caption:='Se acabó';

Nótese que una vez llamado a Sleep, el programa se bloquea durante 25 segundos, y si empiezas a darle a botones y tal, estas acciones se llevarán a cabo después de transcurrir esos 25 segundos.


Salu2.

Caral 24-02-2008 01:03:35

Hola
Bueno yo se que los maestros ya te han dicho lo que puedes hacer, pero si ademas no quieres mover el raton para poner un componente timer, lo puedes crear por codigo.
aqui por ejemplo tendras un relojito en un label.
Código Delphi [-]

procedure TForm1.FormCreate(Sender: TObject);
begin
    Label1.Caption:= '';
    with TTimer.Create(nil) do
    try
    interval:= 1000;
    OnTimer:= Tiempo;
    finally
    end;
end;

procedure TForm1.Tiempo(Sender: TObject);
begin
     Label1.Caption:= TimeToStr(time);
end;
Saludos

ixMike 24-02-2008 01:16:42

Cita:

Empezado por Caral (Mensaje 268204)
Hola
Bueno yo se que los maestros ya te han dicho lo que puedes hacer, pero si ademas no quieres mover el raton para poner un componente timer, lo puedes crear por codigo.
aqui por ejemplo tendras un relojito en un label.
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
Label1.Caption:= '';
with TTimer.Create(nil) do
     try
      interval:= 1000;
      OnTimer:= Tiempo;
     finally
     end;
end;

procedure TForm1.Tiempo(Sender: TObject);
begin
      Label1.Caption:= TimeToStr(time);
end;

Saludos


¿Después del finally no falta un Free;?

Edito: no, vaya, no falta, sino no tienes el relojito :p ¡¡qué despiste!!

rauros 24-02-2008 13:18:08

Muchísimas gracias. Me estáis ayudando un montón. Y lo de sleep está interesante, pero probaré el relojito gracias de nuevo :D.


La franja horaria es GMT +2. Ahora son las 07:59:12.

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