|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.05.2014, 01:18 | #1 |
Новичок
Джуниор
Регистрация: 04.05.2014
Сообщений: 2
|
Ошибка Control has no parent
Добрый день.
Вопрос такой. Delphi 7. Создается компонент - наследник класса TLabeledEdit. Стоит добавить переопределение конструктора, или метода Change или добавить published свойство, как при попытке разместить компонент на форме появляется сообщение Control ... has no parent window. В конструкторе убирал инициализацию полей. Оставлял в порядке эксперимента лишь inherited Create(AOwner) - ошибка. Если убрать все добавленные свойства, методы и т.д. и оставить голый класс - ошибка не исчезает. Помогает лишь удаление компонента из пакета, затем создание по-новой. Но опять же до упомянутого места, после чего опять выскакивает ошибка. ------ Проверил. Даже без свойств и конструкторов, простое переопределение метода Change уже приводит к такому результату. Хотя до этого не приводило. В рабочей программе (которая на данный момент запускается) переопределение работало и там стоит именно этот компонент. В общем, подскажите, пожалуйста, в какую сторону копать. Заранее спасибо. |
04.05.2014, 10:16 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Поэтому тест компонента рекомендую делать не кидая его на форму с панели компонентов, а прописывая ручками в программе все его изначальное создание в коде. По крайней мере я так и выходил из положения, потому что постоянно переустанавливать было неудобно.
I'm learning to live...
|
|
04.05.2014, 13:42 | #3 |
Новичок
Джуниор
Регистрация: 04.05.2014
Сообщений: 2
|
"Установленный компонент уже не зависит от исходника"
Не совсем так. У меня в Delphi 7 если вносить другие изменения и перекомпилировать dclusr, то эти изменения моментально отражаются как в самой программе, так и в поведении при design-time. В общем, воспользовался логичными костылями. В каждой переопределенной методе после inherited запихал if Parent=nil then exit; Выглядит коряво, но работает. Все же, не понимаю. Неужели тот же Change вызывается до определения родителя в каком-нибудь SetParent. В любом случае, спасибо. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка Control has no parent window | mosxe | Общие вопросы Delphi | 0 | 27.05.2013 11:25 |
Control '' has no parent window. при создание DateTimePicker | bakanaev | Общие вопросы Delphi | 6 | 31.03.2013 15:44 |
Ошибка for loop control variable must be simple local variable | 2UnLiMiTeDD | Общие вопросы Delphi | 8 | 19.03.2012 16:13 |
создание TSplitter на форме в dll, Control has no parent window | sprofxx | Общие вопросы Delphi | 9 | 04.09.2010 13:37 |
Alpha Control (ошибка) | ZBEP | Компоненты Delphi | 2 | 27.04.2009 12:00 |