Вот небольшой набросок тех же самых часов, написанных на почти чистом WinAPI (почти - потому, что все-же используются модули SysUtils + DateUtils)...
clocks.pas ( 7.63 килобайт )
Кол-во скачиваний: 1037Можно запускать несколько копий приложения, при изменении размера окна часы также меняют размер...
Надо только добавить несколько функций:
1) запрет дальнейшего уменьшения по достижении какого-то размера, чтобы часы не были слишком маленькими;
2) вывод цифр можно поправить, чтобы во-первых, не выводилось 0 .. 11, а выводилось 1 .. 12, да и сами координаты выводимого текста (а, возможно, и шрифт) мне кажется, надо доработать...
3) ну, в принципе, добавлять можно еще много, только тогда это уже будут не совсем простые часы
Если есть желание, давайте доработаем проект... Выбирайте, или это будет работа с API (но без ООП), или через Graph (но ООП), и так и так можно сделать довольно интересное приложение...
P.S. Не стал исправлять программу, но заметил, что в ней не освобождается контекст устройства после обработки WM_TIMER... Естественно, поскольку это событие происходит ежесекундно, а контекст создается, и не освобождается - программа начинает "поедать" память. Перед выходом из блока If draw Then ... в обработчике WM_TIMER добавить ReleaseDC(Window, DC);