Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Таймер своими руками


Автор: Vetos 24.8.2008, 11:01
Здравствуйте программисты!
Мне нужно чтото типо таймера, но не таймер.
Тоесть нужно как то зацыклить прогу, но не цыклом.
Примерно вот что я хочу:
Код

begin
Scene.FrameOn;//тут запускается цыкл или таймер, после чего процедура Go выполняется покругу, мне без разницы с каким интервалом
end;

procedure Scene.Go
begin
i:=i+1;                      //это просто пример того что должно происходить
end;


Да можно воспользоваться и стандартным таймером, но он бывает глючит, чем быстрее будет происходить повтор тем лучше)
Спсибо!

Автор: SneG0K 24.8.2008, 11:39
Код

procedure Scene.Go
begin
 Scene.go;
end;

Автор: BaD_SeCt0R 24.8.2008, 11:53
Так?
Код

procedure Scene.FrameOn;
begin
  while true do
    begin
      Scene.Go;
      Application.ProcessMessages;
    end;
end;


Автор: Vetos 24.8.2008, 12:15
Спасибо!

Автор: SneG0K 25.8.2008, 00:10
BaD_SeCt0R, а цикл зачем?

Автор: BaD_SeCt0R 25.8.2008, 11:28
SneG0K, 
Цитата(Vetos @  24.8.2008,  11:01 Найти цитируемый пост)
Scene.FrameOn;//тут запускается цыкл или таймер, после чего процедура Go выполняется покругу, мне без разницы с каким интерваломend;

что не так?

Автор: SneG0K 25.8.2008, 12:28
BaD_SeCt0R, ну впринципе то пофиг, хотя можно процедуру вызывать из себя (меньше кода).

Автор: BaD_SeCt0R 25.8.2008, 12:39
SneG0K, имхо цикл легче прервать по условию, чем рекурсию.

Автор: SneG0K 25.8.2008, 12:53
BaD_SeCt0R, не вижу разницы...

Автор: BaD_SeCt0R 25.8.2008, 13:01
SneG0K, согласен, в принципе так оно и есть  smile Оффтопик smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)