Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.28;
Скачать: CL | DM;

Вниз

Как отловить назначение Parent для своего Owner?   Найти похожие ветки 

 
Ega23 ©   (2007-10-08 14:17) [0]

Ситуация: есть TFrame, на нём много всякого, в том числе один из самописных компонентов.
В ран-тайм этот фрейм создаётся, инициализируется как надо, после чего ему назначается Parent.
Вопрос: как на уровне моего компонента отследить данное событие?


 
MBo ©   (2007-10-08 14:27) [1]

SetParent перекрыть?


 
Джо ©   (2007-10-08 14:28) [2]

> [0] Ega23 ©   (08.10.07 14:17)
> Ситуация: есть TFrame, на нём много всякого, в том числе
> один из самописных компонентов.
> В ран-тайм этот фрейм создаётся, инициализируется как надо,
> после чего ему назначается Parent.
> Вопрос: как на уровне моего компонента отследить данное
> событие?

Уже начиная с TControl имеется procedure SetParent(AParent: TWinControl); virtual.


 
Ega23 ©   (2007-10-08 14:30) [3]

SetParent у фрейма - не хочется.
SetParent у моего контрола - не отрабатывает в нужное мне время, т.к. для него парентом является сам фрейм и он (парент) не меняется.


 
Ega23 ©   (2007-10-08 14:32) [4]


> Уже начиная с TControl имеется procedure SetParent(AParent:
>  TWinControl); virtual.


Фрейм набивается в Design-Time, там и парент назначается.
Ну , в смысле, парент у моего контрола появляется автоматом после создания самого фрейма.
А вот когда я этому фрейму паретн назначу - это уже моё дело. Вот и хочу поймать на уровне контрола, лежащего на панели, лежащей на фрейме отловить факт назначения фрейму парента.


 
Ega23 ©   (2007-10-08 14:45) [5]

Перекрытие CreateWnd/DestroyWnd тут не подойдёт?


 
evvcom ©   (2007-10-08 18:00) [6]

CreateWnd/DestroyWnd здесь похоже подойдет. Надо пробовать.
Сначала у меня другая идея возникла. Но она, видимо, хуже.
А в целом не нравится мне эта затея. На кой твоему компоненту момент изменения парента фрейма? Что-то не туда ты пытаешься сделать, имхо. Ведь родитель имеет полное право свое дитя отлучить от себя или вообще прибить. И что тогда? Попробуй осмыслить свою задачу и поискать другие пути решения.



Страницы: 1 вся ветка

Текущий архив: 2007.10.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
2-1191687106
savyhinst
2007-10-06 20:11
2007.10.28
TType=(something1, something2, something3)


1-1187035237
timself
2007-08-14 00:00
2007.10.28
Приблема с RichEdit ...


9-1162381901
DI FES
2006-11-01 14:51
2007.10.28
Помогите Пожалуйста!


4-1177599496
ffo_2
2007-04-26 18:58
2007.10.28
Как получить имя этого компонента?


2-1191477523
031178
2007-10-04 09:58
2007.10.28
Как создать приложение на Delphi 8 под Win32