Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi delay problem! (https://www.delphipraxis.net/3517-delay-problem.html)

smax 16. Mär 2003 19:50


delay problem!
 
Hallo,

ich benutze folgende Code:

Delphi-Quellcode:
delay(1000);
Fehler der angezeigt wird:

Undeclared identifier: 'delay'

Woran liegt das?

EDIT: So wie es aussieht kennt Delphi 6 diesen Befehl garnicht! Gibt es einen anderen der das selbe bewirkt?

Luckie 16. Mär 2003 19:53

Kuck mal in der Code-Library, da müßte dir geholfen werden.

smax 16. Mär 2003 19:54

Ja diese Funktion kenne ich ja schon aber vorhin hat Daniel B zumir gesagt, dass es auch nur mit delay geht!

Luckie 16. Mär 2003 19:57

Nein. Delay ist noch aus TP-Zeiten und die Funktion kennt der Delphi-Compiler nicht mehr.

smax 16. Mär 2003 20:01

Ok gut aber mal eine Frage zu deiner netten Funktion!

Wo gebe ich den z.B. 1 Sekunde Pause an?

Achso und warum wird in der Zeile procedure delay(msec:longint); ein Fehler angezeigt?

Und zwar:

Statement expected but 'PROCEDURE' found

Daniel B 16. Mär 2003 20:09

Hallo,

Du hast irgendwo die Prozedur
Delphi-Quellcode:
procedure Delay(mSec: LongInt);
begin
  //bla und bla
end;
Dein Aufruf sieht dann so aus:
Delphi-Quellcode:
Delay(1000);
Das steht dann z.B. zwischen dem begin und end irgend einer Prozedur, z.B. bei einem ButtonClick o.ä..
Die Zahl in Klammern sind Millisekunden, 1000 wäre also eine Sekunde.

Grüsse, Daniel :hi:

Luckie 16. Mär 2003 20:11

Wo ist das Problem?
Delphi-Quellcode:
procedure delay(msec:longint);
var
  start,stop:longint;
begin
  start := gettickcount;
  repeat
    stop := gettickcount;
    application.processmessages;
  until (stop - start ) >= msec;
end;
Das kopierst du als erste Prozedur in deinen Code nach Implementation.

Und aufrufen tust du es mit
Delphi-Quellcode:
Delay(1000);
Die Zeit wird in Millisekunden angegeben.

smax 16. Mär 2003 20:13

THX!

smax 16. Mär 2003 20:22

Es geht aber nicht!

Normalerweise sollte er nämlich jetzt bis 0 runterählen!

Delphi-Quellcode:
for i:=0 to ending do;
 begin
  calc:=calc-1;
  panel1.caption:='Noch ' + IntToStr(calc) + ' Sekunden';
  i:=i+1;
  delay(1);
 end;
Fehler wird nicht angezeigt!

Daniel B 16. Mär 2003 20:36

:mrgreen:
Wärst Du so freundlich uns zu sagen was Du da machst, bzw. was Du vor hast? Was soll denn wie passieren?

Grüsse, Daniel :hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:27 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz