AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Wie eine Uhr über einen Thread aktualisieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie eine Uhr über einen Thread aktualisieren

Ein Thema von willyxv · begonnen am 5. Nov 2010 · letzter Beitrag vom 6. Nov 2010
 
willyxv

Registriert seit: 25. Okt 2010
29 Beiträge
 
Delphi XE Enterprise
 
#1

Wie eine Uhr über einen Thread aktualisieren

  Alt 5. Nov 2010, 12:13
Hallo,

in meinem Program wird über einen Timer alle 5 Sekunden über das netzwerk ein Pumpenturm abgerufen. Die Empfangenen Daten werden dann verglichen, in eine sql Datenbank geschrieben und auf verschiedenen Labels und Memos angezeigt.

Nun zu meinem Problem. Es soll eine Uhrangezeigt werden welche die aktuelle Uhrzeit anzeigt. Ich habe versucht dies über einen timer zu verwirklichen, jedoch belibt dieser immer kurz stehen wenn die Netzwerkanfrage raus geht und dies dauert 3 Sekunden. Also springt meine Uhr immer um 3 Sekunden weiter und läuft dann 2 Sekunden wieder und springt wieder weiter. Wie schaffe ich es die Uhr unabhänig von der Datenbankabfrage zum laufen zu brinen?
ich habe das ganze schon über einen Thread versucht aber ich weiß nicht wie ich das Label aktualisiert bekomme. Die Datenbankanfrage kann ich auch nicht auslagern da ich viele Daten direkt per Memo anzeigen lasse.

Hier das Programm wie es bisher läuft:
Delphi-Quellcode:
procedure TForm1.LeseTimerTimer(Sender: TObject);
var g : integer;
begin
    TCPClient.IOHandler.Write(); // Start des Abfragebefehls
    for g := 0 to Pumpenanzahl - 1 do
    BEGin
     Speicher := TCPClient.IOHandler.ReadLn(wert4); // Datenempfang

          // Vergeliche und Ausgaben.

     TCPClient.IOHandler.Write(); // Bestätigung des Empfangs und anforderung der nächseten Pumpe
    END; // die Schleife braucht etwa 3 Sekunden und in dieser Zeit steht die Uhr.
end;

procedure TForm1.ZeitTimerTimer(Sender: TObject);
begin
   Zeit.Caption := datetostr(now) + ' ' + timetostr(now);
end;
Bin für jede Hilfe Dankbar

MfG Willy
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr.
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