gifts2017

Очередная форма прогресса

Опубликовал Антон Степанов (Stepa86) в раздел Программирование - Практика программирования

Форма, отображающая процент выполнения некоторого процесса

Не плюсиков ради, а полезности для...

Форма задумывалась как легкоподключаемая в код обработка. Для взаимодействия с формой нужно ее получить,

инициализировать (фФормаПрогресса.Инициализация( ВсегоЭлементов , , "Пример работы формы прогресса..." );)

в цикле нарастить значение индикатора (фФормаПрогресса.УвеличитьИндикатор( "Чтобы прервать нажмите Ctrl+Break." , );)

и закрыть форму в конце.

 

похожие публикации:

Шаблон "прогресс бара"

Прогресс бар для 1С 77 

Правильная индикация прогресса цикла (отсюда взята идея оценки остатка времени и принцип наращивания индикатора)

Хэндл статус-бара в 8-ке (слегка похоже все таки)

Обновление строки состояния

Процесс бар (индикатор состояния выполнения цикла)

Форма прогресса в типовых

может есть еще, которые не нашел...

 

Скачать файлы

Наименование Файл Версия Размер
Обработка содержит форму и пример. 75
.1246003724 9,50Kb
25.09.09
75
.1246003724 9,50Kb Скачать
Обработка содержит форму и пример. (динамический расчет шага) 27
.1246023116 9,67Kb
25.09.09
27
.1246023116 9,67Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Сергей Рудаков (fishca) 26.06.09 12:37
это для тех у кого нет типовой конфигурации под рукой? ;)
2. Антон Степанов (Stepa86) 26.06.09 12:39
(1) угу, а еще для тех кто не умеет гуглить и сам не может написать =) я ее вообще долго под себя затачивал, хоть и делается аналог минут за 15
3. Антон Степанов (Stepa86) 26.06.09 12:46
Кстати, там еще простой способ выполнения кода после срабатывания обработчика прерывания кода есть, не все могут знать, а фича полезная...
4. Сергей Рудаков (fishca) 26.06.09 12:48
(3) так вот про это можно было и в описании накропать пару строк, что мол обработка имеет полезную фичу ;)
5. Евгений Люлюк (Evg-Lylyk) 26.06.09 16:32
Форма задумывалась как легкоподключаемая в код обработка.

ИМХО форма не приспособлена для использования... я вот решил использовать и понял что проше заново сделать т.к.
1. Зачемто изменен цвет индикатора и на не очень хорошем LCD плохо различимы проценты
2. Нету поля отражающего выполняемое действие пример ("получение документов")
Ну допустим у меня есть "Получение документов", "Ввод документов" и я хочу это уместить в одной индикации
3. Нельзя поставить на индикатор сразу допустим в положение 50%, а если использовать как у тебя то индикация будет почти всегда самой долгой операцией
Посмотри это http://www.infostart.ru/blogs/540/
6. Антон Степанов (Stepa86) 26.06.09 16:55
(5) 1) Цвет индикатора изменен, потому что в моей конфе используется отдельный стиль, цвет изменить 2 секунды
2) сначало так фФормаПрогресса.УвеличитьИндикатор( "Получение документов" , );), потом фФормаПрогресса.УвеличитьИндикатор( "Ввод документов" , );) или можно напрямую менять поля у формы... я предпочитаю для разных процессов начинать индикацию заного, а в деталях писать номер шага и количество шагов... можно было бы сделать одну форму с двумя индикаторами: эта операция и всего, но мне не нужно было...
3) продолжительность работы самого индикатора зависит линейно только от количества обрабатываемых объектов, поэтому всегда можно найти примеры, когда индикация будет дольше времени занимать, чем все остальное, и когда меньше... мое ИМХО, лучше потратить на 50% больше времени на индикацию и расчет остатка времени, чем оставить пользователя в неведении... Мне пока не нужна была возможность произвольной установки значения индикатора, поэтому и не делал такой возможности...

эта ссылка даже в топике числится
7. Антон Степанов (Stepa86) 26.06.09 17:03
+(6) может на досуге покапаюсь с оптимизацией
8. Антон Степанов (Stepa86) 26.06.09 17:33
Добавил динамический расчет шага в форму процесса, теперь шаг обновления расчитвыается так, чтоб индикатор обновлялся раз в секунду
9. Евгений Люлюк (Evg-Lylyk) 26.06.09 18:00
"50% больше времени на индикацию" нафиг не нужна такая индикация из за которой надо ждать в два раза больше.

(8) Правильно, только не понял зачем чтото расчитывать? Проверил изменилось
ли время и все, если изменилось обновляешь.
10. Яков Коган (Yashazz) 29.06.09 13:29
Можно глупый вопрос: если нажать Ctrl+Break, форма закроется и исчезнет?
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа