Bei deiner Uhr kommst du mit LiveBinding-Expressions auf 0 bis 1 Codezeilen.
In die TLayout noch auf die Gegenseite ein TLabel und schon brauchst du 6 TLayout weniger.
Aber vorallem im Code ... Warum diese Stringoperationen?
Delphi-Quellcode:
//rrHout.RotateAngle := 30 * HourOf(Now) + 6 * MinuteOf(Now) / 12;
rrHout.RotateAngle := 30 * HourOf(Now) + MinuteOf(Now) / 2;
rrMin.RotateAngle := 6 * MinuteOf(Now);
rrSec.RotateAngle := 6 * SecondOf(Now);
OK, Deine Frage bezieht sich auf Beitrag 55 (siehe oben).
Den Code brauche ich, um die Zeiger zu bewegen und die richtige Uhrzeit anzuzeigen (wenn Du eine schönere Lösung kennst, ist die immer Willkommen).
Was Du mit Deinem Hinweise zum TLayout meinst, ist mir nicht ganz klar. Davon abgesehen, ist das mit dem TLayout eh nur zur Demonstration. In einer anderen Version der Uhr, die ich in meinem in Arbeit befindlichen Buch für Delphi Berlin vorstelle, gibt es nur ein TLayout für einen Stundenabschnitt (siehe Bild in Anlage), das dann zur Laufzeit einfach entsprechend dupliziert wird, dann spart man sich eine Reihe von Layout-Arbeiten, die man ja im Video hinlänglich sehen kann (die gesamte Design-Arbeit, die dann noch zu leisten ist, wird in Bild2 verdeutlicht).