Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.16;
Скачать: CL | DM;

Вниз

сложный вопрос по таймеру   Найти похожие ветки 

 
Igit ©   (2002-07-24 08:44) [0]

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


 
Digitman ©   (2002-07-24 08:50) [1]

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


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

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

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


 
bytebutcher ©   (2002-07-24 09:46) [3]

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


 
DAO ©   (2002-07-24 10:39) [4]

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


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

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


 
Igit ©   (2002-07-25 01:27) [6]

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



Страницы: 1 вся ветка

Текущий архив: 2002.09.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-50862
zzet
2002-09-04 17:36
2002.09.16
Как обработать восстановление из трея?


6-50901
Dark Lord
2002-07-14 08:33
2002.09.16
Создание общих ресурсов


8-50867
fore_3
2002-04-25 13:34
2002.09.16
Как сделать аквалайзер


1-50839
Filat
2002-09-04 11:39
2002.09.16
Как сделать вывод панели с ProgressBar.


3-50592
Kolya
2002-08-24 23:45
2002.09.16
Autoincrement