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

Вниз

Создание св-ва Form: TForm у невизуального компонента?   Найти похожие ветки 

 
Артем К   (2003-09-08 08:44) [0]

Привет всем МАСТЕРАМ!!!

Делаю невизуальный компонент. У него есть св-во Form: TForm.
Как мне сделать, чтобы при размешении на форме этого компонента в это св-во заносилась моя форма.

Заранее спасибо!


 
Calm ©   (2003-09-08 09:13) [1]

Когда ты положишь свой компонент на форму, то форма станет владельцем (Owner) этого компонента. Т.е. попробуй в констукторе присваивать своему свойству Self.Owner


 
Smashich ©   (2003-09-08 09:19) [2]

а смысл? как было замеченно форма юудет явдяться владельцем твоего компонента. тогда зачем еще одно свойство?. просто обращайся TForm(Self.Owner). а в конструкторе проверяй владельца. тоесть AOwner is TForm. это в случае конечно если твой компонент не должен принадлежать какому то обьекту не класса TForm.


 
Юрий Зотов ©   (2003-09-08 09:20) [3]

> в констукторе присваивать своему свойству Self.Owner

И даже этого не требуется. Зачем плодить лишние поля?

type
TMyComp = class(...)
private
...
function GetForm: TForm;
...
public
property Form: TForm read GetForm;
...
end;

function TMyComp.GetForm: TForm;
begin
if Owner is TForm then
Result := TForm(Owner)
else
Result := nil
end;


 
Артем К   (2003-09-08 09:26) [4]

Большое спасибо всем отозвавшимся!

А особенно - Юрию Зотову СПАСИБО!!!



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
4-58971
Igit
2003-07-12 08:06
2003.09.18
Поиск файлов


1-58611
DelphiNew
2003-09-08 14:58
2003.09.18
Чувствительность к регистру


3-58538
Stas
2003-08-28 10:38
2003.09.18
TStream и Recordset


1-58687
Евгыш
2003-09-03 14:47
2003.09.18
Загрузка Frame из DLL


1-58616
wildcow
2003-09-05 15:56
2003.09.18
PopUpMenu в RunTime