Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.20;
Скачать: [xml.tar.bz2];

Вниз

Свойство типа 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-65381
Sam Stone
2003-09-28 17:36
2003.10.20
Копия записей


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


14-65621
Ilia
2003-10-01 02:31
2003.10.20
Help!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


1-65426
Islander
2003-10-07 17:48
2003.10.20
Как подгрузить ресурс из DLL?


14-65604
Denius
2003-09-29 17:49
2003.10.20
Расскажите про классы форм, пжалста!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский