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

Вниз

Свойство типа TComponent   Найти похожие ветки 

 
Raduga   (2003-10-09 12:56) [0]

Здравствуйте, мастера.
Пишу компонент, в нем сделал поле типа FAnyCompanent:TCompanent (или тип будет наследник от него, не важно), и соответственно в published добавил

AnyCompanent:TCompanent read FAnyCompanent write FAnyCompanent

Все работает замечательно.
Вопрос вот в чем: не происходит ли потеря ресурсов при изменении свойства AnyCompanent (присвоили другой компонент допустим)?
Или лучше написать дополнительно процедуры установки свойств?


 
clickmaker ©   (2003-10-09 12:57) [1]

А причем тут ресурсы? Присваивается же не сам компонент, а указатель на него


 
Skier ©   (2003-10-09 12:59) [2]


> не происходит ли потеря ресурсов при изменении свойства
> AnyCompanent (присвоили другой компонент допустим)?

FAnyCompanent создаётся внутри твоего класса или используется только как "хранилище" для ссылки ?


 
Raduga   (2003-10-09 13:05) [3]

Что-то совсем загнался... :)
Для ссылки только.


 
Skier ©   (2003-10-09 13:07) [4]

>Raduga (09.10.03 13:05) [3]

> Для ссылки только.

Тогда утечки никакой не будет, но может понадобится
перекрытие (override) метода TComponent.Notification


 
Raduga   (2003-10-09 13:20) [5]

>Skier © (09.10.03 13:07) [4]
Что-то не уловил, для чего перекрывать?


 
Skier ©   (2003-10-09 13:22) [6]

>Raduga (09.10.03 13:20) [5]
1) Я сказал "может", т.е может и не понадобится )
2)Почитай про этот метод в Help-е. Если будет не понятно, то
попытаюсь объяснить.


 
Raduga   (2003-10-09 13:29) [7]

Как я понял, чтобы при помещении компанента, на который ссылается FAnyCompanent, на форму в моем компоненте что-то выполнялось автоматически, так? Но у меня гораздо проще задача, пусть все ручками делается :)


 
Юрий Зотов ©   (2003-10-09 13:29) [8]

И еще может потребоваться метод записи свойства:
write SetAnyComponent
вместо
write FAnyComponent

Имеется в виду FreeNotification. Тоже посмотрите.


 
Skier ©   (2003-10-09 13:30) [9]


> Как я понял, чтобы при помещении компанента, на который
> ссылается FAnyCompanent, на форму в моем компоненте что-то
> выполнялось автоматически, так?

Так. Но не только при помещении, но и при удалении


> Но у меня гораздо проще задача, пусть все ручками делается
> :)

OK


 
Юрий Зотов ©   (2003-10-09 13:31) [10]

> Raduga (09.10.03 13:29) [7]

При ПОМЕЩЕНИИ можно ничего не делать, а вот при УДАЛЕНИИ делать обязательно надо. Иначе наловитесь Access Violation"ов по самое некуда.



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

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

Наверх




Память: 0.49 MB
Время: 0.015 c
3-65396
griser
2003-09-26 18:36
2003.10.20
Интерфейсы


14-65606
wl
2003-09-30 23:28
2003.10.20
нужна пустая база данных(Access) от клиента форумов Dolphin


3-65334
Relaxxx
2003-09-30 16:09
2003.10.20
Master-deteil(продолжение)


1-65417
Эдуард
2003-10-06 21:29
2003.10.20
Как из Dll ки определить место, где он лежит?


1-65453
la Merin
2003-10-07 14:31
2003.10.20
Как заменить стрелки на кнопке у ComboBoxa на картинку?