Skalierbare Bildschirm-Uhr

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,

    gestern habe ich mich mal auf der Seite Rosetta umgeschaut, um zu sehen, welche Probleme noch nicht in Icon gelöst wurden.

    Rosetta ist eine recht interessante Seite. Dort ist die Umsetzung ausgewählter Proogrammier-Probleme in sehr vielen Programmiersprachen enthalten. Man kann also sehen, wie etwas in der einen und vergleichsweise in einer anderen Programmiersprache umgesetzt wird. Manches Problem ist sehr praxisnah, manches andere ist aber auch sehr abstrakt.

    Eines solcher Dinge ist die Programmierung einer Analog-Uhr, die auf dem Bildschirm so vor sich hintickt. Meine Analog-Uhr macht aber wesentlich mehr als nur einen Sekundenzeiger in der richtigen Position anzuzeigen.

    • Die Uhr ist mittels Resize-Funktion skalierbar
    • Der Minutenzeiger wechselt seine Position nicht mit Ablauf der Minute sondern während des Ablaufs einer Minute (je nach Uhr-Größe alle paar Sekunden)
    • Ebenso ergeht es dem Stundenzeiger
    • Wenn die Uhr eine bestimmte Größe überschreitet, werden die einzelnen Stunden-Position mit römischen Ziffern versehen - die Schriftgröße variiert mit mit der Fenstergröße
    • Wenn die Uhr eine bestimmte Größe unterschreitet, verschwinden zuerst die römischen Ziffern
    • Wenn die Uhr eine bestimmte Größe unterschreitet, verschwinden auch die Positionskennzeichnungen der einzelnen Minuten

    Und wie meistens: Das Programm frisst wenig Ressourcen.


    Das Programm läuft ohne Änderungen auf allen Systemen, auf denen Icon in der Version 9 läuft.


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (23. Oktober 2016 um 23:10)

  • Hallo zusammen,

    mir kam dann noch die Idee, die Zeiger etwas mehr zu gestalten. Der erste Gedanke war, dies mittels Turtle-Graphik zu machen. Der Vorteil der Umsetzung von Turtle-Graphik besteht darin, dass erhebliche Umrechnungen kartesischer Koordinaten entfällt. Jeder Turtle-Graphik-Befehl besteht in Prinzip aus Richtung (Winkel) und Abstand, Zeichnen oder nicht, Zeichnen der Umrisse oder Füllen einer geometrischen Figur.

    Quell-Code:

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!