|
|
Работа с формами: как переоткрыть форму |
☑ |
|
0
YauheniL
19.06.08
✎
11:32
|
Коллеги. Может, у кого-нибудь есть идеи о том, как лучше переоткрыть (или сымитировать повторное открытие) форму, в случае, когда процесс выполнения находится в контексте формы?
Мне кажется, что лучше инициализировать форму и объект первоначальными настроками, вызвать последовательно процедуры "ПередОткрытием" и "ПриОткрытии".
|
|
|
1
YauheniL
19.06.08
✎
12:35
|
UP
|
|
|
2
Fragster
гуру
19.06.08
✎
12:44
|
(0) не возражаю
|
|
|
3
Stepa86
19.06.08
✎
12:44
|
(2) + 1
|
|
|
4
H A D G E H O G s
19.06.08
✎
12:46
|
Никак.
Если в контексте формы (в конце всех процедур) - это происходит раньше, чем создастсь сама форма (окно). Это при создании объекта формы.
P.S. Не парьтесь ерундой.
|
|
|
5
YauheniL
19.06.08
✎
12:57
|
(4) Ну, не писать же "Состояние системы изменилось. Пожалуйста, закройте и откройте форму заново".
P.S. Это как "для продолжения установки перезагрузите Ваш компьютер"...
|
|
|
6
H A D G E H O G s
19.06.08
✎
13:09
|
Что мешает код контекста вынести в отдельную процедуру и позже выполнить ее еще раз?
|
|
|
7
YauheniL
19.06.08
✎
13:11
|
(6) Контекст -- это обработчик события. Выполнять его еще раз не совсем правильно
|
|
|
8
YauheniL
19.06.08
✎
13:11
|
(0) В общем я пока остановился на
ЭтаФорма.Закрыть();
ЭтаФорма.Открыть();
|
|
|
9
H A D G E H O G s
19.06.08
✎
13:12
|
код приведи
|
|
|
10
YauheniL
19.06.08
✎
13:13
|
Если ВсеОК Тогда
Если ЭтаФорма.Открыта() Тогда
Переоткрытие = Истина;
ЭтаФорма.Закрыть();
КонецЕсли;
ЭтаФорма.Открыть();
КонецЕсли;
|
|
|
11
H A D G E H O G s
19.06.08
✎
13:14
|
Процедура мфПриОткрытии() ЭКСПОРТ
//Полезный код
КонецПроцедуры
Процедура ПриОткрытии() //обработчик
мфПриОткрытии();
КонецПроцедуры
И потом
ЭтаФорма.мфПриОткрытии();
ВСЕ!
|
|