Имя: Пароль:
1C
 
Таймер времени без использования ПодключитьОбработчикОжидания
0 ИС-2
 
02.09.15
08:32
На форму надо выводить сколько времени прошло с момента начала выполнения операции.
Проблема в том, что на форме используется несколько ПодключитьОбработчикОжидания с интервалом в 1 сек, которые начинают конфликтовать с друг другом (в итоге при одновременном выполнении какой-то из них не срабатывает).
Поэтому для таймера хочу использовать что-то другое.
Пока только придумал только использовать бегущую строку (как одометр на автомобиле). Но это не лучший вариант.
Как можно сделать таймер времени без использования ПодключитьОбработчикОжидания?
1 Остап Сулейманович
 
02.09.15
08:39
(0) Стесняюсь спросить "придумал только использовать бегущую строку" - это вместо таймера?
2 vde69
 
02.09.15
08:39
зачем несколько обработчиков??? никогда не писали например для ардуино??? там один цикл на все...
3 Остап Сулейманович
 
02.09.15
08:41
+ (1) И как это "обработчики конфликтуют между собой"?
4 vde69
 
02.09.15
08:41
Процедура МойОбработчикОжидания()

Если НадоСделатьА Тогда
   ДелаемА()
КонецЕсли;


Если НадоСделатьБ Тогда
   ДелаемБ()
КонецЕсли;

КонецПроцедуры
5 Serg_1960
 
02.09.15
09:06
На форму НАДО выводить... а может быть и не надо :)
6 Serg_1960
 
02.09.15
09:18
Типовой алгоритм типовой конфигурации :)
ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации()

[ушёл с ветки, скучно зевая - уже всё придумано до нас]
7 ИС-2
 
02.09.15
10:59
(1) да
(2) поздно пить боржоми. Согласен, что по уму, нужен 1 обработчик события, но переделывать надо много. Экономически не оправдано. Тем более что один запускается каждую секунду, второй раз в 3 секунды, один просто однократно.
(3) Очень просто в 11:15:12 должны выполниться 2 обработчика. Образуется очередь на выполнение. В итоге какой-то не срабатывает или срабатывает не в свое время
(5) надо. Особенно когда срок выполнения больше X секунд - "не тормози,сникерс сни".
8 Serg_1960
 
03.09.15
09:33
Форма длительной операции - одна, а таймеров на ней может быть много. Алгоритм формы должен уметь добавлять или удалять таймеры. При открытии первого таймера - форма открывается (таймер добавляется), при удалении последнего таймера - форма закрывается. Реализовать легко.

"... но переделывать надо много. Экономически не оправдано" - не надо свистеть тут нам про экономику, честно признавайся - лень тебе :)
Просто надо было сначала подумать, прежде чем городить свои велосипеды(зачеркнуто) алгоритмы.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан