Eine Uhr

programmieren - so etwas lernt man in der Vorlesung Programmieren im Internet
Die Uhren sind als Javacomponenten implementiert und werden mit Parametern für die Größe, die Farben sowie eine  Zeitzone initialisiert.  Das Problem das man nun häufig beobachten kann ist, dass die von der VM abgeriffene Uhrzeit nicht mit jener in der "Taskleiste" übereinstimmt,  das sei aber leider nicht zu ändern, so der Dozent - er empfindet dies sogar als Vorteil, denn so erhalte man die unverfälschte, wirkliche Systemzeit (frei von Dingen, wie Softwareseitige Manipulation der Anzeige im Rahmen der Sommerzeit oder so).
Nutzt man dagegen eine VM von Microsoft (das Programm jview.exe oder den Systemeigenen Browser), so gibt diese für alle Zeitzonen grundsätzlich die Betriebssystemzeit zurück. Ach interessant.
 
Eine Uhr hiesiger Zeit
Eine Uhr Londoner Zeit
Eine Uhr Pekinger Zeit


Die Uhr ist als AWT-Componente implementiert, so dass sie von einem beliebigen Container (Frame, Applet, Container...) eingebunden werden kann. Die Objekte Ziffernblatt.class und Zeiger.class dienen als Abstraktion ebendieser Objekte einer Uhr und werden von der paint()-Methode der Uhr (Uhr.class) zum Zeichnen selbiger eingesetzt. Das Uhr.class Objekt seinerseits wird von dem Thread Uhrwerk.class gesteuert, durch Aufruf der repaint()-Methode, nach verheriger Manipulation der Zeitfelder in Uhr.class.
Die Classen AnotherCanvas.class und Fenster.class sind lediglich einfache Ableitungen zum doppeltgepufferten Zeichnen (verhindert Bildschirmflimmern).
AnotherCanvas.java
Fenster.java
Uhr.java
UhrFrame.java
Uhrwerk.java
Zeiger.java
Ziffernblatt.java
 

Für Fragen, Anregungen, Kritik  u.Ä. bin dankbar!
Impressum und Datenschutz