![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с наследованием формы через OTA [D6]
DrPass © (2005-11-16 22:32:00)Столкнулся с такой интересной проблемой Delphi6 (может, и других версий Delphi, не пробовал).
Есть некая форма, с компонентами не ней и установленными обработчиками. Если я наследую новую форму от нее "вручную", все работает просто замечательно
(да-да, знаю, устанавливать обработчики в родительском классе - дурной тон, но тут уж ничего не поделаешь, разве что переписать там полпроекта)
Иная картина наблюдается, если я пытаюсь наследовать эту форму в своем эксперте, через интерфейс IOTAModuleCreator. Вернее, она наследуется, создается, все свойства нормально устанавливаются. Но одна неприятность - при любом действии (сохранении, компиляции etc) Delphi начинает ругаться на каждый унаследованный обработчик, предлагая его удалить. При этом, независимо от выбора (yes/no/cancel), ничего она не удаляет, и потом нормально компилирует. Если сгенерированный экспертом проект закрыть и снова открыть, проблема исчезает. Похоже, что баг все-таки в реализации OTA... сталкивался кто-нибудь с таким?
DrPass (2005-11-17 22:07:00) [1]Обошелся глупым, но действенным методом - заставил эксперта создавать в новом модуле пустые заглушки на месте унаследованных обработчиков. Delphi сама их удаляет при первом сохранении, зато после этого новый проект работает на "ура"