Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Uhrzeit unabhängig von Systemzeit laufen lassen (https://www.delphipraxis.net/17402-uhrzeit-unabhaengig-von-systemzeit-laufen-lassen.html)

dopeline 4. Mär 2004 18:46


Uhrzeit unabhängig von Systemzeit laufen lassen
 
Hallo!

folgendes problem:

die uhrzeit auf den schulrechnern ist dauernd falsch, ich habe aber keine rechte die uhr zu ändern. deshalb möchte ich ein kleines progie coden, welches die aktuelle zeit aus dem netz holt und dann in einem label die "aktuelle" zeit weiterlaufen lässt, ohne jede sekunde wieder die zeit aus dem netz zu holen...

die zeit aus dem netz zu laden ist kein problem.
angenommen, ich hole mir die aktuelle internetzeit mit der IdTime komponente.

wie stelle ich es jetzt an, das von dieser zeit, diese in dem label weiterläuft?


Gruß, dopeline

AnTiPrimaTe 4. Mär 2004 19:01

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
Lass doch ein Timer (TTimer) laufen, der in einem 1 Sek. Intervall eine Sekunde auf die geholte Zeit draufrechnet und das Ergebnis anzeigt.
Wäre das was?

Basilikum 4. Mär 2004 19:14

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
das mit dem Timer wird sehr ungenau.....

verwende die Differenz zwischen der Systemzeit und der "wirklichen" Zeit aus dem Internet:

Code:
Ti Zeit aus dem Internet
Ts Systemzeit
Td Differenz

Einmal ausführen:
Td = Ts - Ti

in Label dies anzeigen:
(Ts - Td)

Wheelie 4. Mär 2004 19:16

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
der Timer ist aber ziemlich ungenau ... nimm lieber den SuperTimer (gibt es aber glaube ich nur bis Delphi 4)!

Luckie 4. Mär 2004 19:26

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
Was ist ein SuperTimer? :shock: Brauch ich dazu 5 Gramm Kryptonit um ihn zu betreiben oder läuft der auch so? :mrgreen:

dopeline 4. Mär 2004 20:11

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
@ Basilikum

danke für den tip!

aber irgendwie bekomme ich das nicht umgesetzt... nehm ich da einen timer?

kann das vielleicht jemand in ein codebeispiel packen? das wär sehr nett...


Gruß, dopeline

dopeline 4. Mär 2004 20:21

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
Es klappt!


Delphi-Quellcode:
var Ti,Ts,Td:TDateTime;

procedure TForm1.AktualisierenClick(Sender: TObject);
begin
 IdTime1.Host:='ntps1-0.cs.tu-berlin.de';
 Ti:=IdTime1.DateTime;
 IdTime1.Disconnect;
 Td := Ts - Ti;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Ts:=now;
Label1.Caption:=TimeToStr(Ts - Td);
end;

Gruß, dopeline

Basilikum 4. Mär 2004 20:25

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
ich kenne die Indys nicht, deshalb wird der Code eher symbolisch:

im Form:
Delphi-Quellcode:
  [..]
  Private
    _TimeDelta : TDateTime;
  [..]
bei Programmstart:
Delphi-Quellcode:
[..]
Var
  InternetTime : TDateTime;
  [..]
Begin
  [..]
  InternetTime:={Indy-Get-Time}

  _TimeDelta:=Now() - InternetTime;
  [..]
im Timer zur Aktualisierung des Labels:
Delphi-Quellcode:
  [..]
  MyLabel.Caption:=TimeToStr(Now() - _TimeDelta);
  [..]

Lefko 4. Mär 2004 20:25

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
ca. so:

Delphi-Quellcode:
procedure timer1.ontimer(self); //intervall = 1000 ms
var Systemzeit, InetZeit, Differenz : TTime;
begin
Internetzeit := Zeit_aus_Internet;
Differenz := Systemzeit - Internetzeit;
Label1.caption := TimeToStr(Systemzeit - Differenz);
end
(echtzeit-geproggt, kein gewehr ;) )

MfG Lefko

//Edith: ok, gleich drei lösungen..... :roll:

dopeline 4. Mär 2004 20:36

Re: Uhrzeit unabhängig von Systemzeit laufen lassen
 
Vielen Dank für eure Hilfe!!!

Gruß, dopeline

PS: kann mir jemand vielleicht noch kurz ne auskunft geben? mein form hat den borderstyle bsNone und es ist gerade mal so groß, wie das label mit der zeit + einen button. sprich, die caption-leiste ich nicht sichtbar. wie kann ich durch klicken und ziehen des labels das fenster verschieben?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:43 Uhr.
Seite 1 von 2  1 2      

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