|
Запуск индикатора при открытии формы
| ☑ |
0
Elvisnya
07.05.12
✎
20:47
|
Всем добрый день!
1С 8.2. Обычные формы. При открытии формы выполняется "дооолгий" алгоритм (30 - 60 секунд), хочу показывать индикатор выполнения (постепенно заполняющаяся полосочка).
Проблема: У формы нет события, которое вызывается после её отображение.
ПриОткрытии - Вызывается при открытии формы, до ее показа.
ПередОткрытием - Вызывается перед открытием формы, до показа ее пользователю.
Нажатие на кнопку после открытия формы не предлагать.
Посоветуйте пожалуйста куда можно капнуть =)
PS Задача относится к классу рюшечек, без которых модно свободно обойтись, но уж сильно хочется индикатор =)
|
|
1
vovus
07.05.12
✎
20:58
|
Отдельную форму нарисуй с индикатором и не парься, отображай ход процесса на ней
|
|
2
vovus
07.05.12
✎
20:59
|
А после выполнения, когда индикатор до 100% дойдет - закрывай
|
|
3
Elvisnya
07.05.12
✎
21:02
|
а как запустить индикацию на другой форме?
|
|
4
vovus
07.05.12
✎
21:05
|
Ну просто открыть ее и передавать на индикатор значения
|
|
5
vovus
07.05.12
✎
21:05
|
модально причем можно открыть
|
|
6
Elvisnya
08.05.12
✎
17:50
|
(5) Модально открыть нельзя, так как код не будет выполнятся, пока модально открытая форма не закроется. Хотя код можно разместить в модально открытой форме.
|
|
7
Elvisnya
08.05.12
✎
17:53
|
(6) Отмена. Не получится запустить код.
|
|
8
Elvisnya
08.05.12
✎
21:35
|
Получилось!
// МОДУЛЬ ГЛАВНОЙ ФОРМЫ
ВыбранноеЗначение = ФормаВыбора.ОткрытьМодально();
// МОДУЛЬ ФОРМЫ ВЫБОРА
Процедура ПриОткрытии()
ЭтаФорма.ПодключитьОбработчикОжидания("ВыполнитьДолгоеДействиеПоказатьИндикацию", 0.1, Истина);
КонецПроцедуры
Процедура ВыполнитьДолгоеДействиеПоказатьИндикацию()
ЭлементыФормы.ИндикаторПрогресса.Видимость = Истина;
// Долгое действие и обновление индикатора прогресса
ЭлементыФормы.ИндикаторПрогресса.Видимость = Ложь;
КонецПроцедуры
|
|
9
Elvisnya
08.05.12
✎
21:36
|
ВОТ КАК ВЫГЛЯДИТ:
|
|