Der Epina Delphi-Kurs bietet Ihnen eine allgemeine Einführung in das Programmieren mit Delphi/Pascal. Mit vielen ausgearbeiteten Beispielen können Sie direkt in die Delphi-Programmierung einsteigen. Mehr dazu finden Sie hier....

11. Programm: Weltzeitanzeige

Schreiben Sie ein Programm, das sowohl die aktuelle lokale Zeit als auch die Zeit an einem auswählbaren Ort der Erde anzeigt. Die Anzeige der Zeit soll dabei mit der Komponente RasterLab aus der SDL Component Suite geschehen und jede Sekunde aufgefrischt werden. Das Format der Zeit soll HH:MM:SS sein (mit führenden Nullen). Außerdem soll das Programm im selben Format die Uptime des Computers (die Zeit wie lange der Computer eingeschaltet ist) anzeigen.

Da die RasterLab-Komponente nur einen String als Anzeigewert akzeptiert, muss die aktuelle Zeit (die man aus der Funktion "Now" erhält) in einen entsprechenden String umgeformt werden. Verwenden Sie dazu ein Unterprogramm, das als Eingangsparameter die Zahl der Sekunden enthält und das als Resultat einen entsprechend formatierten String zurückgibt.

Das Benutzerinterface könnte etwa folgendermaßen aussehen:

Die aktuelle Zeit liefert Ihnen das Betriebssystem über die Delphi-Funktion Now. Dies ist eine Gleitkommazahl, bei der der ganzzahlige Anteil die Zahl der Tage seit 1900 enthält, und der Dezimalbruch den Tagesanteil seit 0 Uhr angibt. Die Uptime in ms bekommen Sie durch die Funktion GetTickCount.

Hier noch die Zeitverschiebungen einiger Weltstädte (ohne Berücksichtigung der Sommerzeit) zur MEZ:

          New York      -6 h
          Los Angeles   -9 h
          Sydney       +10 h
          Moskau        +2 h
          Tokyo         +8 h

Falls Sie noch Lust und Zeit haben, könnten Sie die Uhr um eine Stoppuhrfunktion erweitern (ein Knopf zum Starten und Stoppen, die Anzeige der gestoppten Zeit in Sekunden auf drei Kommastellen genau).

Download: prog_011.zip [3 kB]

Last Update: 2008-09-09