Lernpfad GUI-Programmierung mit dem Java-Editor

3.1 Zeitzonen – Ziel

Nun habt Ihr schon eine erste kleine Benutzeroberfläche zur Umrechnung von Sommer- und Winterzeit erstellt. Man kann dies noch ein wenig erweitern. Aufgrund der Erdrotaion geht an Orten mit unterschiedlicher geographischer Breite die Sonne zu unterschiedlichen Zeiten auf und unter. Da man beispielsweise in Hamburg und Berlin nicht unterschiedliche (nach dem Sonnenstand gehende) Uhrzeiten möchte, wurden Zeitzonen geschaffen. Diese Abschnitte auf der Erdoberfläche haben auf Grund staatlicher Regelungen jeweils die gleiche Uhrzeit und das gleiche Datum. Die folgende Abbildung zeigt vier unterschiedliche Zeitzonen:

Ausgangspunkt ist Greenwich in England. Die sogenannte koordinierte Weltzeit (UTC, Universal Time Coordinated) hat dort ihren Nullpunkt. Diese Zeitzone umfasst Grönland, Irland und das Vereinigtes Königreich Großbritannien (grüngelbe Farbmarkierung in der Abbildung oben). Geht man nun Richtung Osten, so muss man seine Zeit vorstellen. Die Zeitzone mit einer Stunde Abweichung von der koordinierte Weltzeit umfasst Westeuropa und geht bis Polen, Slowenien, Ungarn, .... Die nächste Zeitzone gilt für Finnland, die baltischen Staaten usw.

Um das Programm noch ein bisschen aufzupeppen und das Dropdown-Menü kennen zu lernen, wird das Programm dahingehend erweitert, dass man sich die Uhrzeit in den folgenden 6 Städten anzeigen lassen kann:
München, London, New York, Honkong, Sydney und Rio de Janeirozu einer gewissen gewissen Regionen Es gibt ja Jetzt kann man noch ein paar Erwetierungen hinzufügen. Als erstes wird die Checkbox-Group beschrieben, sie wird hier verwendet um Sommer- oder Winterzeit auszuwählen. Bis jetzt kann man bei Sommerzeit einen Haken setzen oder nicht. Eine verbesserte Version wäre aber eine Auswahl zwischen die beiden Zeiten, bei dem aber nur eins von beiden angekreuzt weden kann, die Checkbox.

Da es dazu ein bisschen Platz auf unserer GUI benötigt, werden die Buttons entfernt. Das Umrechnen von Sommer- auf Winterzeit soll direkt über Radiobuttons erfolgen. Für den Benutzer gibt es noch eine kleine Anleitung in Form eines mehrzeiligen Textbereichs, einer TextArea.

Als Vorbereitung muss die Klasse ZEIT noch um ein Attribut zeitzone und die entsprechende Setter- und Gettermethode ergänzt werden. Dieses Attribut speichert die Abweichung von der koordinierten Weltzeit. Im Konstruktor wird der Wert auf den, für unseren Wohnort passenden Wert, 1 gesetzt.