Имя: Пароль:
1C
1С v8
Остановить выполнение типовых событий
0 thomY100
 
11.08.11
11:09
Привет, можно ли как-то приостановить выполнение стандартных событий, конкретнее:
пытаюсь программно удалить страницы панели и нужно чтобы при этом не вызывалось событие Панель1ПриСменеСтраницы(Элемент, ТекущаяСтраница), подскажите пожалуйста?
1 patapum
 
11.08.11
11:12
удалить из свойств объекта обработчик
2 Stim213
 
11.08.11
11:12
оО зачем программно удалять страницы панели? МОжет ты хочешь скрыть? И зачем скрывать текущую, вопрос?
3 Шапокляк
 
11.08.11
11:14
Может, вести список страниц, которые не надо отображать, а обработчик сориентировать на этот список?
4 thomY100
 
11.08.11
11:14
удаляю потому что перезагружаю настройку панели, а на другой настройке может быть меньше страниц, но старые остаются висеть, или можно как-то очистить панель полностью?
5 patapum
 
11.08.11
11:15
а! о, чего ты хочешь...
пишешь переменную НадоЛиВызыватьОбработчикСменыСтраницы
при своих программных действиях устанавливаешь его в Ложь
в обработчике анализируешь, если он Ложь, выходишь
предварительно восстановив в Истину, чтоб потом срабатывал на интерактив
6 Goggy
 
11.08.11
11:18
СтандартнаяОбработка = Ложь
7 Goggy
 
11.08.11
11:20
(6) фигню сморозил...

Просто условие в обработчике на проверку действия и там уже определяйся чё делать.
8 thomY100
 
11.08.11
11:22
ага, так и сделал, спасибо
9 Киборг
 
11.08.11
11:30
наверно можно и так

ЭлементыФормы.Панель1.УстановитьДействие("ПриСменеСтраницы", неопределено)
...
твои команды
...
ЭлементыФормы.Панель1.УстановитьДействие("ПриСменеСтраницы", Новый Действие("Панель1ПриСменеСтраницы"))
10 thomY100
 
11.08.11
14:53
спасибо, это решение покрасивее)
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.