![]() |
Analog Clock
Huhu. Ich hab' mir vor einiger Zeit mal eine Analog-Clock gecodet. Alles auch schön und gut. Nun wollte ich es aber so umsetzen das ich eine Uhr gecodet hab und diese öfters (in verschiedenen Varianten anezgein lassen möchte). Sprich. Eine uhr...und diese in 10 Varianten anzeigen lassen möchte. Ich hab nur überhaupt keine Ahnung wie ich das machen könnte. *aufm schlauch steh*....ich fänds irgendwie doof nun 10 uhren zu coden oô.....ich weiss das es irgendwie geht, nur der weg dahin fehlt mir...bitte um Rat ....
Edit: Desweiteren wollte ich fragen ob/wie es möglich ist die selbstgemalten Zeiger durch Images zu ersetzen?! |
Re: Analog Clock
Was meinst du mit verschiedenen Varianten? Andere Stile sie zu zeichnen?
|
Re: Analog Clock
HI,
irgendwie ist dein Problem (mir) noch nicht all zu klar. Woran genau scheiterst du denn? Was möchtest du denn an der Uhr ändern? Also an sich ist alles was du brauchst ein wenig OOP. Kenntnis der Design-Pattern ist (wie immer) auch nicht von Nachteil. Du solltest deine Uhr sehr modular aufbauen. Das heißt hier insbesondere, dass die Anzeige und die Logik (abfragen der Uhrzeit, bewegen der Zeiger, ...) getrennt vorliegen. Die Repräsentation (das Aussehen der Uhr) solltest du zudem von einer abstrakten Basisklasse ableiten oder ein Interface erstellen und dieses in allen anderen implementieren. An sich reicht es, wenn du hier die Uhrzeiger auf eine bestimmte Position setzen kannst (und natürlich die Uhr zeichnen). Was diese Methoden dann konkret zeichnen sollte halt erst in den verschiedenen Uhren implementiert werden. Wo also die Uhrzeit herkommt (oder die Position der Zeiger oder oder oder) ist der Uhr-Anzeige egal, die soll nur in ihrem Stil zeichnen. Sollten die Uhren alle gleich groß sein und die gleichen Zeiger verwenden, kannst du sogar den Teil in eine eigene Unit auslagern und musst dich dann nur um das zeichnen des Hintergrunds der Uhr kümmern. Da ein Uhr sich aus verschiedenen Teilen zusammen setzt, die sich nicht gegenseitig kennen brauchen (z.B. die einzelnen Zeiger, der Hintergrund, die Logik um die Uhrzeit aktuell zu halten, ...) solltest du hier mit dem Fabrik-Muster arbeiten. An sich gibt es hier drei Schlagworte, die sich gut für eine nähere Betrachtung eignen: Depency Injection, Abstract Factory und Factory, dies sind alles so genannte Design Pattern, die du hier verwenden kannst (nicht musst). Gruß Der Unwissende [ADD] Ok, gleiche Frage nochmal von Frederic, du siehst ist wirklich unklar gestellt deine Frage [/ADD] |
Re: Analog Clock
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zitat:
|
Re: Analog Clock
In Turbopower Orpheus gibts Uhren. Analoge mit Zeigern und digitale. Hatte mir mal den Source angesehen : die machen sich nicht die Mühe, den Hintergrund zu zeichnen, sondern benutzen logischerweise ein TImage. "Gezeichnet" werden da lediglich die Zeiger bzw. die Digitalanzeige. Guck dir das mal an.
P.S.: sehe jetzt erst die Grafik. Ist das nicht sogar eine Orpheus-Uhr ? :shock: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz