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

Вниз

TTimer   Найти похожие ветки 

 
Builder ©   (2004-03-03 20:00) [0]

Здравствуйте, подскажите, как вообще работате TTimer, что то не мошу понять сути, если можно маленький примерчик..


 
Тимохов ©   (2004-03-03 20:02) [1]

Что там понимать?
Кладете его на форму
Кликаете на OnTimer
В теле события ShowMessate("hi");
Enabled у таймера true
Interval у таймера 1000
Запускаете приложение

И получаете hi каждую секунду.


 
Builder ©   (2004-03-03 20:04) [2]

А если, скажем, совместно с ProgressBar?


 
Sphinx ©   (2004-03-03 20:06) [3]

Только надо учесть, что этот таймер привязан к аппаратному и частота его дискретизации 55мс. Так что получать этот "Hi" вы будете не раз в 1000 мс а раз в 1045 мс.


 
VMcL ©   (2004-03-03 20:17) [4]

>>Sphinx © (03.03.04 20:06) [3]

Я бы сказал, что получать раз в >=1000 мс. Windows не явл. системой реального времени.


 
Anatoly Podgoretsky ©   (2004-03-03 20:19) [5]

Builder © (03.03.04 20:04) [2]
Совмещай если сможешь установить Max


 
Sphinx ©   (2004-03-03 20:24) [6]

> раз в >=1000 мс.

55*19=1045 ;) это более 1000 и дискетизация в 55мс


 
VMcL ©   (2004-03-03 20:26) [7]

>>Sphinx © (03.03.04 20:24) [6]

А может и через десять секунд сработать, а не через 1.045.

З.Ы.
>дискетизация
разбивка по дискетам? :))))


 
Builder ©   (2004-03-03 20:28) [8]

to Anatoly Podgoretsky ©
Пардон, не совсем понял? Max это значение ProgressBar?


 
Sphinx ©   (2004-03-03 20:33) [9]

> А может и через десять секунд сработать

Ктож тогда такой компонент использовать будет??? Работает он как часы в трее, т.е. если не висит система - работает, висит - не работает; погодите, а если система висит, что же тогда работает ;)

> >дискетизация
> разбивка по дискетам? :))))

Неее, по CD-RW без возможности стереть!


 
Anatoly Podgoretsky ©   (2004-03-03 20:41) [10]

Builder © (03.03.04 20:28) [8]
Оно и вот если ты скажешь про него конкретнее тогда можно будет что ни будь добавить.

Sphinx © (03.03.04 20:33) [9]
В соответствии с возможностями системы, уйдет в доглое чтение плохого CD и получишь обещанное, а то и поболее.


 
Gero ©   (2004-03-03 20:45) [11]

> Max это значение ProgressBar?
Нет, это его свойство.


 
Юрий Зотов ©   (2004-03-03 20:50) [12]

> Sphinx © (03.03.04 20:33) [9]

Поместите в обработчик OnTimer долгий цикл без вызова ProcessMessages и посмотрите, что будет с таймером.

Еще вариант - другой поток имеет высокий приоритет.


 
Sphinx ©   (2004-03-03 20:56) [13]


> Anatoly Podgoretsky © (03.03.04 20:41) [10]

Я и говорю, что он привязывается к системному времени, не может система обновить время - не срабатывает Таймер, но это уже экстрим.


> Builder © (03.03.04 20:28) [8]

Примерно так
procedure TRegistrForm.Timer1Timer(Sender: TObject);
begin
ProgressBar1.StepIt;
if ProgressBar1.Position>100 then
ProgressBar1.Position:=0;
end;


 
panov ©   (2004-03-03 20:58) [14]

>Sphinx © (03.03.04 20:24) [6]
55*19=1045 ;) это более 1000 и дискетизация в 55мс

Неверно.
секунда - не тот случай, когда дискретизация таймера будет влиять.

Тем более, что в W2000 и XP эта величина - 10мс.

Значение интервала времени после срабатывания таймера будет 60сек плюс-минус 10мс...


 
panov ©   (2004-03-03 20:59) [15]

т.е. 1сек плюс-минус 10мс...


 
Sphinx ©   (2004-03-03 21:03) [16]

> Юрий Зотов © (03.03.04 20:50) [12]

Да не спорю. Знаю что може и через десять минут, но это если имеются сторонние воздействия: "другой поток имеет высокий приоритет.
Я же имею ввиду конкретно тот проект над которым работашь.
"долгий цикл без вызова ProcessMessages". - Хе, человек спросил, как вообще таймером пользоваться, я вообще и ответил.
Может рано еще в дебри за грибочками лезть?


 
Sphinx ©   (2004-03-03 21:07) [17]


> в W2000 и XP эта величина - 10мс

не знал :(


 
Anatoly Podgoretsky ©   (2004-03-03 21:08) [18]

Так ты и полез в дебри [3] не зная как это работает и как правильно пользоваться.


 
Sphinx ©   (2004-03-03 21:13) [19]


> Anatoly Podgoretsky © (03.03.04 21:08) [18]

Это не дебри, просто столкнулся один раз с этим, программа не работала как надо, промежуток срабатывания не менялся в пределах 0-55 и 55-110 мс, а надо было. Хотел как лучше, и нате, опустили меня :(......
Злые Вы, но уйти не могу, много интересного


 
Anatoly Podgoretsky ©   (2004-03-03 21:27) [20]

Ты не правильно пишешь, надо не :(, а :-)


 
panov ©   (2004-03-04 09:13) [21]

Злые Вы, но уйти не могу, много интересного

Дык это... не опускали... Чуть-чуть поправили-) Вот и узнал дополнительно сам что-то-)



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

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

Наверх




Память: 0.51 MB
Время: 0.041 c
14-43821
Knight
2004-02-21 00:55
2004.03.14
Москвичи, требуется информация для размышления...


1-43480
Pa5ha
2004-02-29 16:01
2004.03.14
Файлы в папке.


14-43780
Cerber
2004-02-18 16:39
2004.03.14
Работа в инте


1-43517
Grinder
2004-02-22 15:56
2004.03.14
высота колонки в list view


4-43969
Grinder
2004-01-08 14:55
2004.03.14
Экстракт иконки