Arta писал(а) 15. Августа 2008 :: 18:36:а... ну я то расписываю всегда прелести наследования
т.е. у меня никаких подписок, и я счастлив безмерно
Ну да, в классе-наследнике вызываешь методы соответствующих классов-обработчиков реквизитов/правил/событий/защиты и т.п.
Это и есть подписка, но без явного вызова ПодписатьсяНаСобытия..., а прямо в классе Документ.РасходнаяНакладная ты вызываешь методы других классов (фактически - подписчиков), в зависимости от событий формы. Т.е. ты юзаешь именно то, о чем мы и говорим
Тока называешь другими словами
В подписке точно также наследуется класс от базового класса-перехватчика, только в наследнике
не прописываются сразу во всех событиях вызовы методов классов-обработчиков, а в одном месте (в Конструкторе или ПриОткрытии) добавляется одна строка: ПодписатьсяНаСобытияФормы(...).
И всё! Класс-обработчик, считай, сам прописал свои методы для всех событий формы/класса.
Насколько меньше работы программеру! Представляешь?
И если ты придумал новое поведение класса-обработчика, например, ПриДвиженииМыши, а раньше это событие у тебя не использовалось в этом классе-обработчике,
соответственно вызов его не прописан в наследниках (таких как Документ.РасходнаяНакладная), то если не пользоваться подпиской, то тебе
нужно пройтись по всем классам (Документ.РасхНакл, Док.Счет, Док.ПрихНакл и т.д.) и вписать вызов метода ПриДвиженииМыши класса-обработчика.
А при подписке - только реализовать этот метод в классе-обработчике. А остальные классы
сами подхватят этот код!