|
|
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Люди! Помогите! Срочно нужно, а я никогда с этим не сталкивался. Нужно в форму вставить таймер (ну, это я смог!). Но нужно, чтобы каждые 5 секунд запускалась процедура. Какие параметры таймера, где их ставить - не знаю. Кроме вставки значка часов на форме - ничего не умею. ПОМОГИТЕ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2006, 20:23 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Interval - значение в миллисекундах (одна тысячная секунды) через которое будет срабатывать таймер Timer - событие, которое будет обрабатываться Включить/выключить таймер можно при помощи свойства Enabled Следует только иметь в виду, что событие таймера не имеет приоритета. Это значит, что оно как все события дисциплинированно встанет в очередь процессов. Например, ты запустил некоторый метод на форме, который работает около минуты. На форме есть таймер, который срабатывает каждые 5 секунд. Произойдет примерно следующее: Каждые 5 секунд будет вызываться событие таймера. Но немедленно выполниться оно не может и будет поставлено в очередь. Всего, за время выполнения долгой процедуры наберется 12 событий таймера (за одну минуту). После окончания выполнения этой долгой процедуры начнут срабатывать события таймера. Все, что накопились в очереди. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2006, 21:49 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
А как сбросить эту очередь событий таймеров ? Или проще не допускать выполнения более одного раза между интревалами срабатывания? Никогда не работал с таймерами, просто интересно как в таком случае поступать. С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2006, 21:52 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
А смысл в работе таймера в процессе выполнения этой долгой процедуры? Все равно ведь не выпонится его событие. Проще перед началом процедуры отключить таймер, а по окончании процедуры снова включить. Если же интервал срабатывания таймера сопоставим или больше времени выполнения долгой процедуры, то и беспокоится не о чем. В худшем случае будет одно отложенное событие, которое выполнится по окончании процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2006, 21:59 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Hi StandD! Выделить эти самые "часы на форме" и нажать F1 Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.04.2006, 00:34 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Posmotri : tTime = DATETIME() + 10 This.Interval = (tTime - DATETIME()) *10000 DO FORM Myform.scx" *This.Enabled = .T. Thisform.RELEASE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.04.2006, 08:31 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Огромное всем спасибо - сейчас засяду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.04.2006, 09:35 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
FoxGroupPosmotri : tTime = DATETIME() + 10 This.Interval = (tTime - DATETIME()) *10000 DO FORM Myform.scx" *This.Enabled = .T. Thisform.RELEASE И зачем так Делаем просто This.Interval =10000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.04.2006, 09:39 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Hi Aleksey! > А как сбросить эту очередь событий таймеров ? Думаю что никак - а вот внутри самого Timer event проводить дополнительый анализ (например на базе дополнительного свойства типа tLastFiredOn) и если надо, то пропускать "излишне частые" срабатывания - это несложно. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2006, 01:32 |
|
||
|
Таймер
|
|||
|---|---|---|---|
|
#18+
Igor Korolyov Hi Aleksey! > А как сбросить эту очередь событий таймеров ? Думаю что никак - а вот внутри самого Timer event проводить дополнительый анализ (например на базе дополнительного свойства типа tLastFiredOn) и если надо, то пропускать "излишне частые" срабатывания - это несложно. Posted via ActualForum NNTP Server 1.3 Спасибо, попробую, если придется воспользоваться таймером. Думаю, что надо создать свой класс на основе базового и дополнить его этим свойства (tLastFiredOn). С уважением, Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2006, 12:26 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33657325&tid=1591891]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
202ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 273ms |
| total: | 534ms |

| 0 / 0 |
