Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

сложный вопрос по таймеру [D5]


Igit ©   (2002-07-24 08:44:00) 

Может кто поможет разобраться как устроен таймер в делфи когда пишешь программу такую всю с красивостями(форма и всё такое не на API). Вот сам вопрос: Допустим есть у меня форма - Form1,
и два таймера - timer1 и timer2. в timer1 написано i:=i+1; его интервал 1000. в timer2 написано g:=g+1; его интервал 5000.
Вот как всё это работает, я думаю что создаются потоки с задержками, прав ли я, и как сделать подобное на API не используя модуля Forms?


Igit   (2002-07-25 01:27:00) [1]

Блин, я понял правду - мне ещё долго расти дo API


Эмиль   (2002-07-24 16:11:00) [2]

Как отсчитать интервал времени без TTimer ?
procedure Delay(ms : longint);
var
TheTime : LongInt;
begin
TheTime := GetTickCount + ms;
while GetTickCount < TheTime do
begin
.....
{полезный код если надо что-то делать}
.....
Application.ProcessMessages;
end;
end;


DAO   (2002-07-24 10:39:00) [3]

Можно попробывать потоки. Сделать Thread и туда вставить код а так же задержку если необходимо Sleep. Хотя надо посмотреть на задачу конкретнее, т.к. не рекомендуеться делать потоки по пустякам!


bytebutcher   (2002-07-24 09:46:00) [4]

самостоятельным надо быть батенька - самостоятельным


Юрий Зотов   (2002-07-24 09:31:00) [5]

Таймер Delphi никаких потоков не создает. Он создает скрытое окно, а затем вызывает API-шную SetTimer.

Без Forms Вы тоже можете использовать SetTimer (cм. в справке), но цикл выборки сообщений нужно будет сделать ручками.


Digitman   (2002-07-24 08:50:00) [6]

Исходник класса TTimer имеется ведь ! Самостоятельно разве не пытался ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо