Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
7-65645
KILLER_ABV
2003-08-04 12:28
2003.10.20
COM порты и модемы...


4-65680
й
2003-08-15 19:09
2003.10.20
Как найти в реестре строку?


3-65318
RDen
2003-09-30 10:55
2003.10.20
SQL


14-65581
Maxim Pshevlotsky
2003-10-02 08:48
2003.10.20
Вопрос по Perl


4-65682
Aleksandr
2003-08-01 17:11
2003.10.20
Объясните мне работу с TEvent ... и WaitForSingleObject




   Наверх