Вверх ↑
Ответов: 1926
Рейтинг: 172
#1: 2015-04-21 19:32:48 ЛС | профиль | цитата
Если знаете pascal:
http://iproc.ru/programming/windows-timers/

Из стандартных компонентов: можно MMTimer, можно Thread. Только имейте в виду, что управлять компонентом MediaPlayer через них не получится (знаю по опыту: в отдельном потоке команды плееру не работают), для этого надо использоваться точку onSyncExec компонента Thread.

Ну а для фиксации (а не итераций) я выбрал для себя функцию timeGetTime, которая уже реализована в компоненте
Add(TimeCounter,2399864,357,364)
{
}

Можно использовать так:
Add(MainForm,5244740,133,210)
{
Width=422
Height=130
link(onCreate,12063704:doStart,[(229,230)(229,279)])
}
Add(MMTimer,1090791,224,294)
{
Resolution=0
Interval=100
link(onTimer,12063704:doStop,[(275,300)(275,286)])
}
Add(TimeCounter,12063704,294,273)
{
link(onStop,5244740:doCaption,[(338,286)(338,251)(121,251)(121,216)])
}
Суть в том, что MMTimer может всё-таки выдавать не точно через указанные интервалы, а точные интервалы и позволяет узнать TimeCounter (хотя его точно тоже имеет определённые пределы - это ведь timeGetTime для миллисекунд).
карма: 9
0
файлы: 1code_35521.txt [302B] [372]